The most comprehensive database of human S-nitrosylated proteins for researchers studying nitric oxide signaling
HSNDB (Human S-Nitrosylation Database) is a cutting-edge web application designed for researchers studying S-nitrosylation - a crucial post-translational modification where nitric oxide (NO) forms covalent bonds with cysteine residues in proteins. This database provides comprehensive information about human S-nitrosylated proteins and their role in health and disease.
S-nitrosylation is a reversible post-translational modification that serves as a critical regulatory mechanism in cellular signaling. In humans, dysregulated S-nitrosylation is implicated in:
- π« Cardiovascular diseases
- π§ Neurodegenerative disorders
- π― Cancer
- β‘ Metabolic diseases
| Feature | Description |
|---|---|
| π Advanced Search | Intelligent auto-complete, multi-parameter filtering, and visual query builder |
| π Interactive Visualizations | 3D protein structures, network analysis, and dynamic charts |
| π Flexible Data Export | Multiple formats including CSV, JSON, FASTA, and XML |
| π₯ Collaborative Research | Share datasets and collaborate with research teams |
| β‘ High Performance | Optimized for large-scale protein data analysis |
| π‘οΈ Secure & Reliable | Enterprise-grade security with regular backups |
- React 18 - Modern React with hooks and functional components
- TypeScript - Type-safe development
- Vite - Lightning-fast build tool and dev server
- Tailwind CSS - Utility-first CSS framework
- Shadcn/ui - Beautiful, accessible component library
- React Router - Client-side routing
- React Query - Data fetching and caching
- Supabase - Backend-as-a-Service with PostgreSQL
- Real-time subscriptions - Live data updates
- ESLint - Code linting and formatting
- PostCSS - CSS processing
- Bun - Fast package manager
- Node.js (v18 or higher)
- Bun (recommended) or npm
- Git
-
Clone the repository
git clone <repository-url> cd Nitro
-
Install dependencies
# Using Bun (recommended) bun install # Or using npm npm install
-
Set up environment variables
cp .env.example .env.local # Edit .env.local with your Supabase credentials -
Start the development server
# Using Bun bun run dev # Or using npm npm run dev
-
Open your browser
http://localhost:8080
| Command | Description |
|---|---|
bun run dev |
Start development server on port 8080 |
bun run build |
Build for production |
bun run build:dev |
Build in development mode |
bun run preview |
Preview production build |
bun run lint |
Run ESLint for code quality |
π Nitro/
βββ π public/ # Static assets
β βββ favicon.ico # App favicon
β βββ placeholder.svg # Placeholder images
β βββ robots.txt # SEO robots file
βββ π src/
β βββ π components/ # React components
β β βββ π ui/ # Shadcn/ui components
β β βββ BrowseInterface.tsx
β β βββ CentralSearch.tsx
β β βββ FeaturesSection.tsx
β β βββ HeroSection.tsx
β β βββ Navigation.tsx
β βββ π hooks/ # Custom React hooks
β βββ π integrations/ # External service integrations
β β βββ π supabase/ # Supabase configuration
β βββ π lib/ # Utility libraries
β βββ π pages/ # Page components
β βββ App.tsx # Main app component
βββ π package.json # Project dependencies
βββ π vite.config.ts # Vite configuration
βββ π tailwind.config.ts # Tailwind CSS config
βββ π tsconfig.json # TypeScript configuration
This project uses Shadcn/ui components for a consistent and accessible design system:
- Forms: Input, Select, Textarea, Checkbox, Radio Group
- Navigation: Navigation Menu, Breadcrumb, Pagination
- Data Display: Table, Card, Badge, Avatar
- Feedback: Alert, Toast, Progress, Skeleton
- Overlay: Dialog, Popover, Tooltip, Sheet
- Charts: Recharts integration for data visualization
The application uses Supabase PostgreSQL with the following main entities:
- id: UUID (Primary Key)
- hsn_id: String (Human S-Nitrosylation ID)
- protein_name: String
- gene_name: String
- uniprot_id: String
- alphafold_id: String
- protein_length: Integer
- positions_of_nitrosylation: String
- total_sites: Integer
- cancer_causing: Boolean
- cancer_types: String Array
- created_at: Timestamp
- updated_at: Timestamp- id: UUID (Primary Key)
- protein_id: UUID (Foreign Key to Proteins Table)
- mutation_type: String
- position: Integer
- amino_acid_change: String
- cancer_type: String
- evidence_level: String
- created_at: Timestamp
- updated_at: Timestampbun run buildCreate a .env.local file with:
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_keyWe welcome contributions from the research community!
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Commit your changes
git commit -m 'Add amazing feature' - Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
- Follow TypeScript best practices
- Use Tailwind CSS for styling
- Write meaningful commit messages
- Test your changes thoroughly
- Update documentation as needed
- Advanced Analytics Dashboard
- Machine Learning Predictions
- API Documentation & Public API
- Mobile App Version
- Integration with PDB Database
- Real-time Collaboration Features
- Enhanced Visualization Tools
This project is licensed under the MIT License - see the LICENSE file for details.
Built with β€οΈ for the scientific research community.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: Contact Research Team
Follow these steps:
# Step 1: Clone the repository using the project's Git URL.
git clone <YOUR_GIT_URL>
# Step 2: Navigate to the project directory.
cd <YOUR_PROJECT_NAME>
# Step 3: Install the necessary dependencies.
npm i
# Step 4: Start the development server with auto-reloading and an instant preview.
npm run devEdit a file directly in GitHub
- Navigate to the desired file(s).
- Click the "Edit" button (pencil icon) at the top right of the file view.
- Make your changes and commit the changes.
Use GitHub Codespaces
- Navigate to the main page of your repository.
- Click on the "Code" button (green button) near the top right.
- Select the "Codespaces" tab.
- Click on "New codespace" to launch a new Codespace environment.
- Edit files directly within the Codespace and commit and push your changes once you're done.
This project is built with:
- Vite
- TypeScript
- React
- shadcn-ui
- Tailwind CSS