Skip to content

threecgreen/vinoteca

Repository files navigation

vinoteca

CI

A wine purchase tracker and review app built with Rust and React with TypeScript. I created this project to give my dad a better way to track his wine purchases than the Excel spreadsheet he was using.

Built-With

  • Rocket
  • PostgreSQL
  • React
  • TypeScript
  • Materialize CSS
  • Chart.js

Building from source

  1. Clone the repository
    $ git clone https://github.com/threecgreen/vinoteca
    $ cd vinoteca
  2. Install rust via rustup if not already installed
    $ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  3. Build the web server
    $ cargo build
  4. Generate contracts
    $ cargo run --bin gen_contracts
  5. Install JavaScript dependencies and create the webpack bundle
    $ npm install --save --no-optional
    $ npm run-script build
  6. Start the web server
    $ cargo run
  7. Navigate to localhost:8000. The service will run the necessary database migrations on startup.

Configuration

Configuration is managed via Rocket.toml.

Required configurations:

  • Postgres database
  • AWS S3 access keys

Optional configurations

  • Secret key for generating encrypted cookies
  • Log level
  • Number of worker threads

Acknowledgements

The background image on the main page was taken by CollideStorm

About

Wine purchase tracker written in Rust and TypeScript

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •