(Under development ๐จ) (mobile 1st ๐ฑ)
2024-07-22.01-52-38.mp4
- https://cartly.fly.dev/
- email: test@test.com
- password: Abc123..
This application allows restaurants to create and manage their menu of food and drinks in QR format. Customers can scan the QR code with their mobile phones to quickly and easily access the restaurant's menu.
- Mobile first ๐ฒ
- Auto translation in the background each time a new product / wine is created / updated. (
GeminiAI๐ฎ +i18n)[ES, IT, FR, EN, RU, IT] - Auto generative descriptions based on the name of the product AND / OR the image (AI ๐ฎ)
- Activate / Deactivate / Modify / Delete products on the fly, the user wont have to refresh the page to see the updates (
WebSocket) - User authentication: Allowing restaurant owners to access their account and manage the data on the fly using a smartphone / tablet / desktop.
- Automatic image processing and compression to improve the performance while reducing the storage cost. (
libvips) - Theme switcher (
Dark๐ /Light๐) - Menu creation and editing: restaurants can create and edit their menu of food and drinks in the application.
- Allergens
- Wines
- Starters
- Main courses
- Desserts
- Special menus
- Ruby on Rails 7
- Tailwind CSS
- ImportMaps
- MySQL
- Hotwire
- Clone the GitHub repository:
git clone https://github.com/BraisonCrece/Restaurant_QR_menu_dashboard - Go to the main directory
- Run
make install - That's all
Cartly includes comprehensive end-to-end testing with Playwright covering all critical user flows.
# Install test dependencies (included in make install)
make test.install
# Run all core tests
make test
# Run quick smoke tests
make test.smoke# Core authentication tests
make test.auth
# Mobile device testing
make test.mobile
# Cross-browser testing (Chrome, Firefox, Safari)
make test.desktop
# Visual testing with browser UI
make test.headed
# Debug mode (step through tests)
make test.debug
# View test results report
make test.report
# Generate new tests interactively
make test.codegen- ๐ Authentication: Login, registration, logout, password recovery
- ๐ฑ Mobile-first: iPhone, Android, responsive design
- ๐ Cross-browser: Chrome, Firefox, Safari compatibility
- ๐ Security: XSS protection, input validation, session management
- โฟ Accessibility: Keyboard navigation, screen readers
Tests run automatically on:
- Every push to
mainanddevelopbranches - All pull requests
- Can be triggered manually
# Run CI test suite locally
npm run test:ci:full
# Individual CI test modes
npm run test:ci:smoke # Quick validation
npm run test:ci:auth # Authentication flow
npm run test:ci:mobile # Mobile devices- HTML Report: Detailed results with screenshots and videos
- Screenshots: Captured on failures for debugging
- Videos: Full test execution recordings
- Cross-browser: Matrix testing across all supported browsers
All test artifacts are automatically uploaded and available for review in failed builds.
If you want to contribute to the application, please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b my-new-feature - Make your changes and commit:
git commit -am 'Add some feature' - Push your changes to the branch:
git push origin my-new-feature - Create a pull request.
This application is under the MIT license. See the LICENSE file for more details.