AppFlowy-IO / AppFlowy-Cloud

AppFlowy is an open-source alternative to Notion. You are in charge of your data and customizations. Built with Flutter and Rust.
GNU Affero General Public License v3.0
1.09k stars 226 forks source link

License: AGPL

Website β€’ Twitter

⚑ The AppFlowy Cloud written with Rust πŸ¦€

AppFlowy Cloud

AppFlowy Cloud is part of the AppFlowy ecosystem, offering secure user authentication, file storage, and real-time WebSocket communication for an efficient and collaborative user experience.

Table of Contents

πŸš€ Deployment

πŸ’» Development

Pre-requisites

You'll need to install:

Configuration

Run with all dependencies

./script/run_local_server.sh

This process will execute all the dependencies and start the AppFlowy-Cloud server. Alternatively, you have the option to run the AppFlowy-Cloud server independently

Run the AppFlowy-Cloud

  1. Run the dependency servers
docker compose --file docker-compose-dev.yml up -d
  1. Install sqlx-cli
cargo install sqlx-cli
  1. Run sqlx migration
sqlx database create
sqlx migrate run
cargo sqlx prepare --workspace
  1. Run the server
cargo run

Run the tests

After the server is running, you can run the tests with:

cargo test

🐞Debugging

Effective debugging is essential for maintaining a healthy application. Here are some tools and commands to help you troubleshoot issues in various components of the AppFlowy cloud server:

Postgres

A web-based administration tool for PostgreSQL. Access it at PgAdmin

    export PGPASSWORD=password
    psql --host=localhost --username=postgres --port=5432

Redis offers a powerful command line interface for managing your Redis instance. Connect using the following command:

    redis-cli -p 6379

Minio

Minio provides a Web UI for easy management of your files and buckets. Access it at Web UI

Portainer

For managing Docker containers, Portainer's Web UI is an excellent tool. Access it at Web UI to easily manage Docker environments, including container deployment, networking, volume management, and more. Access it at Web UI

βš™οΈ Contributing

Any new contribution is more than welcome in this project! If you want to know more about the development workflow or want to contribute, please visit our contributing guidelines for detailed instructions!