1
0
Fork
You've already forked calendar
0
forked from webxdc/calendar
A mobile-friendly calendar for WebXDC
  • JavaScript 85.5%
  • HTML 7.9%
  • CSS 6.6%
2025年08月05日 08:15:44 +02:00
.forgejo/workflows Add ci.yml ( #100 ) 2023年07月15日 13:28:03 +00:00
assets update README screenshot ( #86 ) 2023年07月04日 17:40:38 +00:00
js notify events 2024年11月28日 12:16:27 +01:00
langs fix typo in german 2024年12月11日 06:52:59 +00:00
public add calendar description ( #93 ) 2023年07月05日 20:23:48 +00:00
test use @webxdc/vite-plugins, and upgrade dependencies ( #126 ) 2024年11月23日 17:03:07 +00:00
.gitignore convert to node package, use vite 2023年06月23日 21:14:31 +02:00
.prettierignore use @webxdc/vite-plugins, and upgrade dependencies ( #126 ) 2024年11月23日 17:03:07 +00:00
calendar.css reduce #editEventDetailsDiv height 2023年06月24日 16:17:16 +02:00
CHANGELOG.md Add changelog ( #116 ) 2023年08月22日 22:29:05 +00:00
index.html use @webxdc/vite-plugins, and upgrade dependencies ( #126 ) 2024年11月23日 17:03:07 +00:00
LICENSE change license to MPL ( #79 ) 2023年06月27日 21:45:04 +02:00
package-lock.json update vitest 2024年11月28日 12:16:47 +01:00
package.json update vitest 2024年11月28日 12:16:47 +01:00
README.md apply sembr to README 2023年09月21日 12:13:12 +02:00
vite.config.js use @webxdc/vite-plugins, and upgrade dependencies ( #126 ) 2024年11月23日 17:03:07 +00:00

Calendar code style: prettier

A simple WebXDC calendar application.

Getting Started

  • Download calendar.xdc file from release assets
  • Attach it to a group chat
  • Added, modified or deleted events will be shared with others in the same group
  • Or try out an online demo

alt text

Import / Export

The calendar is based on the ICS format as described in RFC 5545 and has been tested with Simple Calendar, Etar, Thunderbird, Google Calendar and Apple Calendar. Please let us know if there are some features missing.

Complete calendar data can be imported from or exported to an .ics file and shared with other group chats. There's also an option to Share individual events in the same fashion.

Contributing

The code is currently based on vanilla JavaScript, HTML and CSS. A development environment with node.js and npm installed is assumed.

Install

npm install

Tests

The tests are run using vitest.

npm test

Run in the browser

This is the simplest way of running the app in the browser. Hot reloading is supported.

npm run dev-mini

Run in the WebXDC emulator

A more advanced way of running the the app is using the webxdc-dev development server.

npm run dev

Linting

We use Prettier as a linter. After you modify the code, run:

npm run format

Building

To create a .xdc file that can be send to a chat in Delta Chat or any other WebXDC-capable app, execute:

npm run build

The resulting optimized .xdc file is saved in dist-xdc/ folder, then just send the file to a group or a chat and you are ready to go!

Translations

Translation files are stored in langs/xy.json, where xy is the abbreviated language locale. This folder should not be updated directly but instead via Codeberg Weblate.

Once a language has been added or updated, the changes can be pushed to Codeberg and a pull request can be created to pull the updates in.

Note that if a new language has been added, then it must be included in js/langs.js to be available and bundled properly.

If a language is missing, it will fallback to English in langs/en.json.

Releasing

To automatically build and create a new GitHub release with the .xdc file:

git tag v1.0.1
git push origin v1.0.1

License

MPL - Mozilla Public License Version 2.0.