The OfficeJS appstore is a software to run an ecosystem for progressive web applications developed with renderJS and jIO. The Appstore can be reached at https://officejs.com and includes a collection of productivity apps such as editors or converters. Apps are developed under the premises of privacy and availability meaning users are free to choose their storage, can work offline and synchronize their applications easily. The OfficeJS Appstore and applications are developed, maintained and used by Nexedi (see our full free software stack).
OfficeJS provides a system for hosting progressive/single page web applications (PWA/SWA) and simplifies both deployment and development of applications, because of:
- Simplified release management and update of applications.
- Ready-to-use jIO connectors to several storages (Dropbox, GDrive, Dav, etc).
- Capability to work offline/synchronise included by default.
- Easily develop and run your own productivity web applications.
- Appstore infrastructure with ERP5 backend for user access right and purchase management.
Why use the OfficeJS Appstore?
The appstore provides a platform to bundle applications related to a specific topic while ensuring all applications follow a standardized architecture and release pattern.
By running ERP5 as a backend, applications of an OfficeJS-type AppStores can provide access to ERP5's underlying business logic. Nexedi has implemented several applications based on this setup for both internal and client use. Example include web applications to take smartphone photos of expenses and file them, document management and validation or more complex support request handling.
Regardless of functional scope, ERP5 allows to incorporate and implement specific features within OfficeJS Appstores and included applications, from management of user access and app-purchases (in-app, app-usage) to invoicing and customer relationship management creating a variety of possible use cases.
Why Develop OfficeJS apps with RenderJS/jIO?
Both frameworks are developed and maintained by Nexedi and are used for next generation ERP5 interfaces and applications. OfficeJS becomes suitable, the more
- business and productivity focus
- free software
become relevant factors.
OfficeJS apps already include features (offline, sync, versioning, storage connectors) which othewise require heavy development effort and testing to get into a stable and production-ready state.
The Appstore itself is free software meaning development efforts are not tied to a potential walletgarden (just host your own dedicated Appstore) with users keeping their data private and away from profit generating equations and algorithms.
Lastly, OfficeJS applications integrate seamlessly with ERP5 making OfficeJS an easy extension point for prodiving specific features of ERP5 to users while also signicifcantly reducing development efforts for these kind of applications (see how to develop OfficeJS app connecting to ERP5).
Following is a selection of publicly available applications on the OfficeJS Appstore created with RenderJS/jIO. Apps listed here use the mentioned OfficeJS AppStore features.
The OfficeJS Bookmark Manager (https://bookmark.app.officejs.com) allows to store bookmarks on a storage of choice and includes support for custom url hashbangs queries/handling. After setup, all url bar searches will query and forward to matching shortcuts kept in the storage before forwarding to the search engine specified in the bookmark manager preferences (see how to setup OfficeJS Bookmark Manager for details).
Facebook Social Media Search
The OfficeJS Facebook Search (https://wallsearch.app.officejs.com) connects to Facebook and creates a duplicate, synchronizing and offline searchable list of a users' Facebook posts (Introductory Post) making it easy to find and share old posts.
For hosting your own AppStore, start by requesting an ERP5 instance, then setup a basic store following the steps outlined in how to setup a standalone AppStore (coming soon).
For developing OfficeJS applications using RenderJS/jIO you can follow the OfficeJS TodoMVC app, a step-by-step walkthrough of building the TodoMVC application using RenderJS and jIO. Head to the OfficeJS Forum to ask for help or submit your app to be published on the AppStore.
For further documentation, please see the complete OfficeJS documentation.
Tips and Tricks
Automated test results for both the appstore and included applications are published on www.erp5.com.
Q: How can I host my own Appstore?
A: The Appstore is based on ERP5 running on a SlapOS webrunner. To run a custom Appstore, you would need an ERP5 instance (how to request an ERP5 instance) and install the business templates found on the appstore repo (how to install business templates). Requires to be familiar with developing ERP5. Once all is setup, your Appstore will be run in your instance's web_site_module to which you have to point your frontend url to.
OfficeJS and the OfficeJS appstore are Free Software, licensed under the terms of the GNU GPL v3 (or later). F or details, please see Nexedi licensing.