forked from grafcube/wordforge
Federated creative writing server.
- Rust 99%
- CSS 0.8%
- JavaScript 0.2%
|
Grafcube
dc9954e220
TODO: Figure out a clean way to close listbox on unfocus. |
||
|---|---|---|
| api | Add additional listboxes | |
| migrations | Add login auth | |
| public | Switch to leptos | |
| server | Add FilterListbox component | |
| ui | Add additional listboxes | |
| .env.example | Update .env.example | |
| .gitignore | Added features to FilterListbox | |
| Cargo.lock | Add additional listboxes | |
| Cargo.toml | Make new crate for shared API | |
| compose.yml | Update redis config | |
| LICENSE | Initial commit | |
| README.md | Fix link redirects | |
| redis.conf | Update redis config | |
| rust-toolchain.toml | Switch to leptos | |
Wordforge ActivityPub
🚧 This is still in active development. Contributions are welcome! 🚧
A place where anyone can write novels using markdown. Designed with federation using ActivityPub.
Requirements
- ActivityPub protocol
- Rust
actix-webactivitypub_federationsqlxleptos
- Podman
- PostgreSQL
- Redis
- Tailwind CSS
TODO and Plans
- Accounts
- Creation and Authentication
- TOTP 2FA
- Editing user info
- Profile pictures etc.
- Deleted users
- Migrating accounts
- Reading lists (Subscribed, Read, Want to Read, Dropped, Custom)
- Webfinger
- NodeInfo
- Mail server
- User email verification
- Updates
- RSS Feed
- Books
- Novels
- Creating books
- Set language
- Editing and deleting
- Federate books
- Comic books
- Compiling into volumes
- Per chapter discussions and bookmarks
- Novels
- Community
- 5-Star review system
- Discussion tab
- API access
- Token generation
- Scopes
- Admin dashboard and moderation
- Analytics
- Instance organized and federated events
- Payment methods
- Selling printed copies
Development
-
Ensure that
rustup,sqlx-cliandpodman-composeare available. -
Configure the
.envfile. -
Start the PostgreSQL and Redis server.
podman-compose up -d
- Run migrations.
sqlx migrate run
- Start the server.
Watch mode:
cargo leptos watch
Serve mode:
cargo leptos serve