https://github.com/fgcz/new_sushi_2025
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.0%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: fgcz
- License: mit
- Language: Ruby
- Default Branch: main
- Size: 498 KB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
- Releases: 0
Metadata Files
README.md
New SUSHI 2025
Rails v8 API and FastAPI (backend) + Next.js (frontend) implementation of the SUSHI bioinformatics system.
1. Prerequisites
- Ruby 3.3.7
- Python 3.12.x
- Node.js 22.16.0
- Git
2. Environment Setup
(on fgcz-r-029)
1. Load Required Modules
bash
module load Dev/Ruby/3.3.7
module load Dev/node/22.16.0
2. Clone Repository
bash
cd /misc/fgcz01/sushi/
git clone git@github.com:fgcz/new_SUSHI_2025
cd new_sushi_2025
3. Backend Setup
```bash cd backend
Configure Bundler for local gem installation
bundle config set --local path 'vendor/bundle'
Install gems
bundle install ```
4. Frontend Setup
```bash cd ../frontend
Install dependencies
npm install ```
2. Development Environment Setup (Limited Compilation Environment)
- Prepare Libraries on Compilation-Capable Machine: ```bash # Clone repository git clone git@github.com:fgcz/newSUSHI2025 cd newsushi2025
Load required modules
module load Dev/Ruby/3.3.7 module load Dev/node/22.16.0
Install backend dependencies
cd backend bundle config set --local path 'vendor/bundle' cp -r /misc/fgcz01/sushi/newSUSHI2025/backend/vendor .
Run tests to verify setup
bundle exec rspec
Install frontend dependencies
cd ../frontend cp -r /misc/fgcz01/sushi/newSUSHI2025/frontend/node_modules .
Run tests to verify setup
npm test ```
- Database Setup (SQLite3, for development): ```bash cd ../backend/ # Setup database bundle exec rails db:create bundle exec rails db:migrate
Run API server
bundle exec rails s -b fgcz-h-037.fgcz-net.unizh.ch -p 4000 ```
- Frontend Verification: ```bash cd frontend
Start development server
npm run dev -- --port 4001 ```
4. Production Deployment Setup
TODO: update
1. Prerequisites
- Full development environment with compilation tools
- All system libraries required for native gem compilation
- Proper SSL certificates and security configurations
2. Backend Production Setup
```bash cd backend
Configure Bundler for production
bundle config set --local path 'vendor/bundle'
Install production dependencies
bundle install
Database setup
RAILSENV=production bundle exec rails db:create RAILSENV=production bundle exec rails db:migrate
Precompile assets (if needed)
RAILS_ENV=production bundle exec rails assets:precompile
Run production server
RAILS_ENV=production bundle exec rails server -p 4000 ```
3. Frontend Production Setup
```bash cd frontend
Install production dependencies
npm ci --only=production
Build application
npm run build
Start production server
npm start ```
4. Docker Deployment
```bash
Build images
docker-compose build
Deploy
docker-compose up -d
Health check
docker-compose ps ```
5. Test
1. Backend Tests
bash
cd backend
bundle exec rspec # Run all tests
bundle exec rspec --format doc # Verbose output
2. Frontend Tests
bash
cd frontend
npm test # Interactive mode
npm run test:watch # Watch mode
npm run test:coverage # With coverage
npm run test:ci # CI mode
6. Project Structure
new_sushi_2025/
├── backend/ # Rails v8 API
│ ├── app/
│ ├── config/
│ ├── spec/ # RSpec tests
│ └── vendor/bundle/ (ignored)
├── frontend/ # Next.js app
│ ├── app/
│ ├── __tests__/
│ └── node_modules/ (ignored)
└── README.md
7. Environment Variables
Create these files if needed (not committed to repository):
1. Backend
```bash
backend/.env
DATABASEURL=sqlite3:db/development.sqlite3 RAILSENV=development ```
2. Frontend
```bash
frontend/.env.local
NEXTPUBLICAPI_URL=http://localhost:4000 ```
8. Architecture
- Backend: Rails v8 API-only mode, FastAPI (later)
- Frontend: Next.js 15 with TypeScript
- Database: SQLite (development), PostgreSQL (production)
- Testing: RSpec (backend), Jest + React Testing Library (frontend)
- Styling: Tailwind CSS
Owner
- Name: Functional Genomics Center UZH|ETH Zurich
- Login: fgcz
- Kind: organization
- Email: protinf@fgcz.ethz.ch
- Location: Switzerland
- Website: https://fgcz.ch
- Repositories: 10
- Profile: https://github.com/fgcz
proteome informatics FGCZ
GitHub Events
Total
- Push event: 3
- Create event: 1
Last Year
- Push event: 3
- Create event: 1
Issues and Pull Requests
Last synced: 5 months ago
All Time
- Total issues: 0
- Total pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- RonaldDomi (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- base latest build
- docker.io/library/ruby $RUBY_VERSION-slim build
- base latest build
- node 18-slim build
- 663 dependencies
- @babel/core ^7.25.0 development
- @testing-library/jest-dom ^6.6.3 development
- @testing-library/react ^16.3.0 development
- @testing-library/user-event ^14.6.1 development
- @types/jest ^29.5.14 development
- @types/node ^20 development
- @types/react ^18 development
- @types/react-dom ^18 development
- @types/testing-library__jest-dom ^5.14.9 development
- autoprefixer ^10.4.21 development
- babel-jest ^29.7.0 development
- eslint ^8 development
- eslint-config-next 14.1.0 development
- jest ^29.7.0 development
- jest-environment-jsdom ^29.7.0 development
- postcss ^8.5.6 development
- tailwindcss ^3.4.17 development
- typescript ^5 development
- next 14.1.0
- react ^18
- react-dom ^18
- brakeman >= 0 development
- database_cleaner-active_record ~> 2.1 development
- factory_bot_rails ~> 6.2 development
- faker ~> 3.2 development
- net-ldap >= 0.16.0 development
- rspec-rails ~> 6.0 development
- rubocop-rails-omakase >= 0 development
- simplecov ~> 0.22 development
- simplecov-rcov ~> 0.3 development
- sqlite3 >= 2.1 development
- vcr ~> 6.2 development
- webmock ~> 3.18 development
- bootsnap >= 0
- devise = 4.9.4
- devise-jwt ~> 0.9
- devise-two-factor ~> 6.0
- jwt ~> 2.7
- kamal >= 0
- mysql2 >= 0.5.5
- omniauth ~> 2.1
- omniauth-github ~> 2.0
- omniauth-google-oauth2 ~> 1.1
- omniauth-rails_csrf_protection ~> 1.0
- puma >= 5.0
- rack-cors >= 0
- rails ~> 8.0.2
- rotp ~> 6.2
- solid_cable >= 0
- solid_cache >= 0
- solid_queue >= 0
- thruster >= 0
- 156 dependencies