Simple Invoicing App
Simple Invoicing App is a browser-based progressive web application (PWA) that designed to helps you track expenses, payments & create professional invoices & estimates. The app built using common web technologies including HTML, CSS and TypeScript on top of Facebook's React library, Wijmo FlexGrid, Wijmo FlexChart and Material UI. Currently, the app doesn't involve a server, all data is stored in IndexedDB.
Tech Stack
- Node.js, Yarn, TypeScript, Babel, Prettier — core platform and dev tools
- Wijmo - Enterprise UI controls.
- Jest - unit and snapshot testing
Prerequisites
- Node.js v12 or higher + Yarn package manager
- Optionally VS Code editor with Project Snippets, EditorConfig, ESLint, and Prettier plug-ins.
Getting Started
Just clone the repo, install the packages with yarn
and run yarn start
:
$ yarn install # Install Node.js dependencies
$ yarn start # Launch application.
Now you can open your web app in a browser and start hacking. Whenever you modify any of the source files inside the /src folder, the module bundler (Webpack) will recompile the app on the fly and refresh all the connected browsers.
Note that the npm start command launches the app in development mode, the compiled output files are not optimized and minimized in this case.
How to Build
If you need just to build the app (without running a dev server), simply run:
$ npm run build
This command builds the app for production to the build folder. It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes. By default, it also includes a service worker so that your app loads from local cache on future visits.
Your app is ready to be deployed.
References
This project was bootstrapped with Create React App and powered by Wijmo components: