Reflection
My First App
I’m happy to announce that my very first complete production-ready web and mobile application. The app is currently called “Wedding Planner”, which summarizes the purpose of the application. The application aids the planning of a typical Indian wedding by providing basic CRUD interfaces for important data like invitations, bookings, budget and expenses, to-dos, notes etc. But what makes this application really stand out is that the data is stored on the server as well as locally, and the application has a real-time connection to the server so that any changes in data are immediately reflected in the UI. This enables real-time collaboration; thus multiple users can collaboratively plan on a single wedding. Users have two types of roles to work on a wedding — Admin and Planner. An Admin has all the permissions, i.e. has access to all the data. A Planner only has access to non-sensitive data like invitations, to-dos, notes etc. but not to data like budget, expenses and bookings.
Technology Stack
The front-end app is built using JavaScript, HTML and CSS that run in the browser or in a native WebView in mobile. The back-end is written in JavaScript/Nodejs.
Frameworks Used :
Front-end/UI — MaterializeCSS
Javascript/Data — Meteor
Mobile WebView wrapper — Cordova
Current State
The app is currently in pre-alpha phase, and is under active development.
UPDATE :The first pre-alpha release is available now!
Testing
At the time of writing this post, only unit tests are being developed and used to drive the development of the application. Any integration/e2e testing suites will be developed in the alpha and beta phases.
Licensing
The app will soon be licensed and free to use (on the web and downloadable from Google Play Store), and is planned to be open-sourced after a successful stable release.
Future Plans
Currently, the application is tailored to be the most useful to a user planning a typical Indian wedding, and therefore, lacks flexibility. Future plans include :
A much more flexible system that makes the application useful to the users planning various types of events
Giving the power to admins to specify which data should be considered “sensitive” and therefore be restricted to planner
Contribution
Since the app is not yet released or open sourced, the possible forms of contribution are showing you support by clapping, following my blog and Github page and starring the existing repositories. Any other forms of contributions like suggestions or code examples are also heartily welcomed.