an API service made for the needs of scholarship registration for students to ease the burden of registering for lectures
Server: Rust, Postgresql, Actix Web
- Authentication system
- Middleware
- Database model
- Database schema
- Database migration
- Unit test
When i make this service, i feel like this project has good performance than the other like laravel and express. After some update i learn something that i think i don't get it before, like i get better when search problem error, implement new system and server security.
Clone the project
git clone https://github.com/Sleepy4k/rust-scholarmate-apiGo to the project directory
cd rust-scholarmate-apiInstall dependencies (if you already install sqlx-cli than skip it)
cargo install sqlx-cliCopy .env file
copy .env.example .envCreate database (if you already create one and make sure you already setting up .env file)
sqlx database dropCreate database (make sure you already setting up .env file)
sqlx database createMigrate database (make sure you already setting up .env file)
sqlx migrate runBuild the server
cargo buildStart the server
cargo runStart the server (for production)
cargo run --releaseEnabling auth service
cargo run --bin auth_serviceEnabling export data
cargo run --bin export_dataEnabling websocket service
cargo run --bin ws_serviceWant to run all service and run for production? build all service and run it in release mode (run it from target/release)
cargo build --release
cargo build --release --bin export_data
cargo build --release --bin auth_service
cargo build --release --bin ws_serviceTo run this project, you will need to add the following environment variables to your .env file
DATABASE_URL
JWT_TOKEN_TITLE
JWT_TOKEN_SECRET
- Rust Lang
- Actix Web
- Sqlx
- Sqlx CLI
- Unit Test
- Example
- Validator
- CSV Writer
- XLSX Writer
- Argon2
- Maud
- Tokenizer
- Lettre
If you have any feedback, please reach out to us at sarahpalastrin@gmail.com
