A mobile-first application providing code-related humor and entertainment for developers. Built with modern web technologies and following best practices in mobile development.
- π Code Humor: Curated collection of programming jokes and memes
- π± Mobile-First: Responsive design optimized for mobile devices
- π Push Notifications: Stay updated with new content
- π In-App Browser: Seamless web browsing experience
- π° AdMob Integration: Monetization through Google AdMob
- π Offline Support: Service workers for offline functionality
- π Multi-Language: Internationalization support
- π² PWA Ready: Progressive Web App capabilities
- π Authentication: Secure user authentication with Firebase
- π Analytics: Built-in analytics and tracking
- π¨ Modern UI: Clean, intuitive user interface
- Angular 18 - Progressive web application framework
- Ionic Framework - Mobile-first UI components
- TypeScript - Type-safe JavaScript
- RxJS - Reactive programming library
- NgRx - State management with Redux pattern
- Firebase - Backend-as-a-Service
- Firestore - NoSQL database
- Authentication - User management
- Storage - File storage
- Analytics - User analytics
- Messaging - Push notifications
- Capacitor - Native functionality bridge
- Android - Native Android support
- PWA - Progressive Web App
- ESLint - Code linting
- Prettier - Code formatting
- Jasmine/Karma - Testing framework
- Transloco - Internationalization
- β Web Application - Modern browsers
- β Android Mobile App - Google Play Store
- β Progressive Web App - Installable web app
- Node.js (v18 or higher)
- npm (v9 or higher)
- Android Studio (for Android development)
- Firebase Account
-
Clone the repository
git clone https://github.com/{your-username}/devvscape-code-humor.git cd devvscape-code-humor -
Install dependencies
npm install
-
Environment Setup
Create
src/environments/environment.ts:export const environment = { production: false, firebaseConfig: { apiKey: 'your-api-key', authDomain: 'your-auth-domain', projectId: 'your-project-id', storageBucket: 'your-storage-bucket', messagingSenderId: 'your-messaging-sender-id', appId: 'your-app-id', }, };
-
Run development server
npm start # or ionic serve -
Build for production
npm run build
# Build the app
ionic capacitor build
# Sync web code to native project
npx cap sync
# Open in Android Studio
npx cap open androiddevvscape-code-humor/
βββ src/ # Source files
β βββ app/ # Application code
β β βββ core/ # Core modules
β β β βββ services/ # Application services
β β β βββ store/ # NgRx state management
β β β βββ guards/ # Route guards
β β β βββ models/ # Data models
β β βββ components/ # Reusable components
β β βββ tabs/ # Tab-based navigation
β β βββ shared/ # Shared modules
β βββ assets/ # Static assets
β βββ environments/ # Environment configurations
β βββ theme/ # Global styles
βββ android/ # Android native project
βββ www/ # Web build output
βββ resources/ # App resources (icons, splash)
βββ public/ # Public assets
βββ docs/ # Documentation
# Run unit tests
npm test
# Run tests with coverage
npm run test:coverage
# Run e2e tests
npm run e2e# Development build
npm run build
# Production build
npm run build:prod# Build for Android
ionic capacitor build android
# Build APK
ionic capacitor build android --prodWe love your input! We want to make contributing to Devvscape as easy and transparent as possible, whether it's:
- π Reporting a bug
- π‘ Discussing the current state of the code
- π§ Submitting a fix
- β¨ Proposing new features
- π Becoming a maintainer
See our Contributing Guide for details.
- 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
We use GitHub issues to track public bugs. Report a bug by opening a new issue.
This project is licensed under the MIT License - see the LICENSE file for details.
- Ionic Team - For the amazing mobile framework
- Angular Team - For the robust web framework
- Firebase Team - For the powerful backend services
- Our Contributors - For making this project better
- π§ Email: support@devvscape.com
- π¦ Twitter: @l00pinfinity
- π¬ Discord: Join our community
- π Documentation: docs.devvscape.com
Made with β€οΈ by the Devvscape Team
This project is actively maintained. For any issues or feature requests, please open an issue in the repository.