GithubHelp home page GithubHelp logo

prangonghose / transactiontrove Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 363 KB

This is a budget storing app built with Rails framework to let users sign up, login, and add different categories to keep a track of their expenses and transaction. They can add transactions for different categories and have a look at their total spending. This app is useful when someone must keep track of their budget.

Home Page: https://transaction-trove.onrender.com/

License: MIT License

Ruby 68.23% JavaScript 1.30% HTML 23.40% Batchfile 2.94% SCSS 3.97% Shell 0.17%
bootstrap4 capybara-rspec css3 devise factorybot faker postgresql rspec-rails ruby ruby-on-rails

transactiontrove's Introduction

logo

Transaction Trove

๐Ÿ“— Table of Contents

๐Ÿ“– Project Name

Transaction Trove using Rails

About this project

This is a budget storing app built with Rails framework to let users sign up, login, and add different categories to keep a track of their expenses and transaction. They can add transactions for different categories and have a look at their total spending. This app is useful when someone must keep track of their budget.

๐Ÿ›  Built With

  • Ruby, Ruby on Rails, JavaScript, HTML, CSS

Key Features

Key features of the application.

  • A full stack app where users can add their expenses and keep a track of their budget.
  • Users can add categories of expenses and add transactions.
  • Users will be able to authenticate their accounts.
  • Users data is private to every user and none can access each others data.

(back to top)

๐Ÿš€ Live Demo

Live demo is currently not available due to restriction on free accounts of Render. Take a look at the UI of the website below.
Presentation of the project is available here.

๐Ÿ’ป Getting Started

To clone the repository in local environment try following steps.

Prerequisites

  • A code editor like Visual Studio Code with Git and Node.js.

You can check if Git is installed by running the following command in the terminal.

$ git --version

Likewise for Ruby and gem for package installation.

$ ruby --version && gem --version

Note: This project is built with Ruby version 3.1.3

Setup

Clone the repository using this link.

Install

In the terminal, go to your file directory and run this command.

$ git clone https://github.com/PrangonGhose/TransactionTrove

Get into development

In the terminal, run these commands to get into development.

$ cd Rails-recipe

$ bundle init

$ bundle install (install dependencies)

Note: You might need to update database.yml for development and testing environments with necessary username and password for your database in their respective positions. Because of free deployment, sending of user confirmation email option can take several hours to reach to the user mail box.

$ rails db:create

$ rails db:migrate

$ rails server

Usage

This website is applicable for both mobile and desktop version.

Run Test

$ rspec

(back to top)

User Interface

Index Page
Categories Page Transactions Page
Add Category Page Add Transaction Page

(back to top)

๐Ÿ‘ฅ Authors

๐Ÿ‘ค Prangon Ghose

(back to top)

๐Ÿ”ญ Future Features

  • Add animation to splash screen
  • Enable users to delete categories and transactions
  • Develop side menu for interacting with the website

(back to top)

๐Ÿค Contributing

Contributions, issues, and feature requests are welcome! Add suggestions by opening new issues.

Feel free to check the issues page.

(back to top)

โญ๏ธ Show your support

Give a โญ๏ธ if you like this project!

(back to top)

๐Ÿ™ Acknowledgments

Authors would like to thank:

(back to top)

๐Ÿ“ License

This project is MIT licensed.

transactiontrove's People

Contributors

prangonghose avatar

Stargazers

 avatar  avatar

Watchers

 avatar

transactiontrove's Issues

Security issue

As a suggestion, it is a good practice to hide your e-mail and your key in order to avoid other people stealing them:
instead :
config.action_mailer.smtp_settings = {
address: 'smtp-relay.sendinblue.com',
port: 587,
user_name: '[email protected]',
password: 'U8gdwSB4PFh7G3DY',
authentication: 'login',
enable_starttls_auto: true
}

Use the environment variables:

config.action_mailer.smtp_settings = {
address: 'smtp-relay.sendinblue.com',
port: 587,
user_name: ENV["SENDINBLUE_EMAIL"],
password: ENV["SENDINBLUE_PASSWORD"],
authentication: 'login',
enable_starttls_auto: true

}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.