https://github.com/jedmund/hensei-api
An API to help Granblue Fantasy players create and share teams and strategies.
https://github.com/jedmund/hensei-api
database gaming granblue granbluefantasy ruby
Last synced: 4 months ago
JSON representation
An API to help Granblue Fantasy players create and share teams and strategies.
- Host: GitHub
- URL: https://github.com/jedmund/hensei-api
- Owner: jedmund
- License: gpl-3.0
- Created: 2020-09-15T01:31:00.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2026-01-05T10:39:32.000Z (6 months ago)
- Last Synced: 2026-01-06T01:12:54.133Z (6 months ago)
- Topics: database, gaming, granblue, granbluefantasy, ruby
- Language: Ruby
- Homepage: https://granblue.team
- Size: 4.57 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Hensei API
## Project Overview
Hensei is a Ruby on Rails API for managing Granblue Fantasy party configurations, providing comprehensive tools for team building, character management, and game data tracking.
## Prerequisites
- Ruby 3.3.7
- Rails 8.0.1
- PostgreSQL
- AWS S3 Account (for image storage)
## System Dependencies
- Ruby version manager (rbenv or RVM recommended)
- Bundler
- PostgreSQL
- Redis (for background jobs)
- ImageMagick (for image processing)
## Initial Setup
### 1. Clone the Repository
```bash
git clone https://github.com/your-organization/hensei-api.git
cd hensei-api
```
### 2. Install Ruby
Ensure you have Ruby 3.3.7 installed. If using rbenv:
```bash
rbenv install 3.3.7
rbenv local 3.3.7
```
### 3. Install Dependencies
```bash
gem install bundler
bundle install
```
### 4. Database Configuration
1. Ensure PostgreSQL is running
2. Create the database configuration:
```bash
rails db:create
rails db:migrate
```
### 5. AWS S3 Configuration
Hensei requires an AWS S3 bucket for storing images. Configure your credentials:
```bash
EDITOR=vim rails credentials:edit
```
Add the following structure to your credentials:
```yaml
aws:
s3:
bucket: your-bucket-name
access_key_id: your-access-key
secret_access_key: your-secret-key
region: your-aws-region
```
### 6. Run Initial Data Import (Optional)
```bash
rails data:import
```
### 7. Start the Server
```bash
rails server
```
## Environment Variables
While most configurations use Rails credentials, you may need to set:
- `DATABASE_URL`
- `RAILS_MASTER_KEY`
- `REDIS_URL`
## Performance Considerations
- Use Redis for caching
- Background jobs managed by Sidekiq
- Ensure PostgreSQL is optimized for full-text search
## Security
- Always use `rails credentials:edit` for sensitive information
- Keep your `master.key` secure and out of version control
- Regularly update dependencies
## Deployment
Recommended platforms:
- Railway.app (We use this)i98-i
- Heroku
- DigitalOcean App Platform
Deployment steps:
1. Precompile assets: `rails assets:precompile`
2. Run migrations: `rails db:migrate`
3. Start the server with a production-ready web server like Puma
## Troubleshooting
- Ensure all credentials are correctly set
- Check PostgreSQL and Redis connections
- Verify AWS S3 bucket permissions
## License
This project is licensed under the GNU General Public License v3.0 (GPL-3.0-only) with additional non-commercial restrictions.
Key points:
- You are free to use and modify the software for non-commercial purposes
- Any modifications must be shared under the same license
- You must provide attribution to the original authors
- No warranty is provided
See the LICENSE file for full details.
## Contact
For support, please open an issue on the GitHub repository.