Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

155 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Library App

Library app written in Rails

Technologies Used

Usage

  • Install Docker and Docker Compose for your platform

  • Build and start the development environment using Docker Compose

docker compose -f docker-compose.dev.yml up -d
  • The application will automatically:

    • Set up PostgreSQL 14 database
    • Install Ruby gems and JavaScript dependencies
    • Create and migrate the database
    • Start the Rails development server
  • (Optional) Seed database using values from db/seeds. Run this in a separate terminal:

docker compose -f docker-compose.dev.yml exec app rails db:seed
docker compose -f docker-compose.dev.yml exec app bin/dev
  • The application is now available at http://localhost:3000!

  • To stop the development environment:

docker compose -f docker-compose.dev.yml down

CSV Import/Export

The application includes functionality to import and export books and members as CSV files.

Rake Tasks

# Export books to CSV
rails csv:export_books

# Export members to CSV  
rails csv:export_members

# Import books from CSV
rails csv:import_books FILENAME=books.csv

# Import members from CSV
rails csv:import_members FILENAME=members.csv

For detailed usage instructions, see CSV Import/Export Documentation.

Deployment

  • Deployment uses Fly.io platform.
  • Make sure you have the Fly CLI installed and are logged in:
fly auth login
  • Run migrations on the deployed application:
fly ssh console -a muthamizh-mandram -C "rails db:migrate"
  • Deploy the application to Fly.io:
fly deploy

Roadmap

This will always be a moving target because, well, software development is an iterative process.

  • i18n 🌍
  • Sorting tables ⬆️⬇️
  • Different permissions for librarians and admins 👨‍💻 👩‍💻
  • Handle renewals as a separate entity (currently renewals are done by returning and re-borrowing the book) 🔂
  • More filters 📝
  • Potential optimisations ✨
  • Home page statistics 💹

About

Library management software for libraries with predominantly regional language books.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages