A modern web-based cryptographic toolkit built with Nuxt 4, Vue 3, and TypeScript
Live Demo: https://crema.enkrip.org
- Hash Functions: MD5, SHA-1, SHA-256, SHA-384, SHA-512
- Public Key Infrastructure: RSA key generation, Certificate Signing Requests
- Modern UI: Built with Tailwind CSS and responsive design
- Firebase Authentication: Secure user authentication
- Progressive Web App: Optimized for all devices
- Framework: Nuxt 4 with Vue 3 Composition API
- Language: TypeScript
- Styling: Tailwind CSS + SCSS
- State Management: Pinia stores
- Authentication: Firebase Auth
- Crypto: Node-Forge library
- Build Tool: Vite
- Deployment: Static hosting (GitHub Pages compatible)
# Clone the repository
git clone https://github.com/dianw/crema.git
cd crema
# Install dependencies
npm install
# Start development server (with hot reload)
npm run dev
# Build for production
npm run build
# Generate static site
npm run generate
# Preview production build
npm run preview
# Run type checking
npm run typecheck
# Lint code
npm run lint
# Clean build cache
npm run clean
crema/
├── assets/ # Static assets (CSS, images)
├── components/ # Vue components (auto-imported)
├── composables/ # Reusable composition functions
├── layouts/ # Application layouts
├── middleware/ # Route middleware
├── pages/ # File-based routing
├── plugins/ # Nuxt plugins
├── public/ # Static files served directly
├── stores/ # Pinia state management
├── types/ # TypeScript type definitions
└── utils/ # Utility functions and constants
This project is configured for automatic deployment to GitHub Pages. The build process generates a static site that can be hosted on any static hosting platform.
- Push your changes to the
main
ormaster
branch - The GitHub Actions workflow automatically:
- Builds the project
- Generates static files
- Deploys to GitHub Pages
# Generate static files
npm run generate
# The generated files will be in .output/public/
# Upload these files to your static hosting provider
The project includes:
.nojekyll
file for proper asset serving- GitHub Actions workflow (
.github/workflows/deploy.yml
) - Static site generation with
nuxt generate
- Base URL configuration for subdirectory hosting
- Upgraded to Nuxt 4 with latest features
- Full TypeScript support with strict typing
- Improved project structure and organization
- Enhanced error handling and middleware
- Better component auto-importing
- Optimized build and development experience
- Modern composables and utilities
- Improved type safety across the application
- Static site generation for GitHub Pages compatibility
- Removed server-side dependencies for universal hosting
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.