Loading repository data…
Loading repository data…
lauslim12 / repository
🏢 Project Asuna is a scalable, brand-ready, and open-source building management system. Built for research!
Project Asuna is an open-source, scalable, 'brand-ready', and user-friendly building management system. This full-stack web application is open-source, under MIT License, and the research about this is published in a free-for-all, strictly non-commercial open-access academic journal about science and technology.
Research Paper: Scalable Building Management System for Offices and Co-Working Spaces (2021).
Project Asuna is strictly non-commercial and is used for education and academic research purposes only. You can use this as a base if you want to create a scalable system with the accompanying tech stack, but please do not use this project 'as it is' in your production scenarios. All of the assets in this website are dummy data and dummy assets, and all rights reserved to their original owners of the assets.
Co-working spaces and offices are two of the most growing and essential businesses in Asian countries. Several factors contribute to the development of this business, such as the offered interiors, facilities, events, etc. However, the most important factor for the development of this business is the community itself, as it can generally result in a collaborative environment where one could collaborate or assist each other. In this research, we implement a highly scalable and flexible information system for offices and co-working spaces building management. This research also encompasses creating a friendly user interface that conforms to the Eight Golden Rules. Several cutting-edge technologies, such as Next.js, Chakra UI, Express.js, Mongo DB, Vercel, and Heroku, are used in the development phase of this system. The prototype built then is tested by using Technology Acceptance Model. We got a satisfactory result, where most respondents claimed that the system could be used in production phase due to its ease of use, performance, and simplicity to manage the business process. It is also proven that scalability will not be a problem when using this system because the technologies used are always ready to be scaled.
Keywords: Building Management System, co-working spaces, cutting-edge technologies, offices, Technology Acceptance Model.
Coworking space is one of the newest business trends in Indonesia and Asian countries in general (Bouncken, 2016). One of the most important metric that we have to understand in order for these kinds of business to flourish is the community of the coworking space. People enjoy coworking spaces with great facilities and good communities (Seo, 2017). If handled correctly, coworking space could make people feel connected to one another and cause them to enjoy the environment, and even create new social circles along the way (Bianchi, 2018).
There have not been a single application to manage these coworking spaces with extremely flexibility. In this application, flexibility means the ability for one to create n rooms and floors, where n itself means infinite. In short, this application is an open-source building management system that allows one to create infinite number of rooms and floors for their own buildings. Users of this application could also place their orders online, shall this application comes to the production version.
Not only built with performance and scalability in mind, this research also encompasses on how to create a friendly user interface to create a simple personal brand. We use assets and brands in order to showcase an example of the previous statement.
a11y).To use this repository, both front-end and back-end must be active simultaneously. We will describe on how to set up each parts. As an initial setup, please clone the repository first.
git clone https://github.com/lauslim12/Asuna.git
cd Asuna
For the next steps, it is assumed that your working directory is Asuna, the root directory of this repository.
web directory.cd web
web and api. For the web, the settings are as follows.export JWT_COOKIE_EXPIRES_IN=<YOUR_VARIABLE>
export PRIVATE_API_URL=<YOUR_VARIABLE>
export NEXT_PUBLIC_API_URL=<YOUR_VARIABLE>
.env.development file and set the variables from there. Don't forget to rename it to .env.local so that it can be used.nano .env.development
mv .env.development .env.local
yarn --frozen-lockfile
yarn dev
yarn build
yarn start
api directory.cd api
api, the environment variables that you need to fill are as follows.export CLIENT_SIDE_URL=...
export DATABASE= # this has to be your 'complete URL string' - complete with username, password, and database name
export JWT_SECRET=
export JWT_EXPIRES_IN=
export JWT_COOKIE_EXPIRES_IN=
.env.development file and rename it to .env.nano .env.development
mv .env.development .env
yarn --frozen-lockfile
yarn migrate
yarn dev
yarn start
You're totally done! Open http://localhost:3001 for the web frontend, and http://localhost:3000 for the API backend.
GitHub Actions have already been set in this repository to implement the CI/CD part of the web application. It will deploy the frontend to Vercel, and will deploy the backend to Heroku.
To update the dependencies, you can run the following commands in both api and web.
yarn outdated
yarn upgrade-interactive --latest
I accept all kinds of contributions. Feel free to submit a pull request or submit an issue if you encounter any issues!
This application is licensed under MIT License, and the research paper is under Creative Commons. For the application's license, please see the LICENSE file for more information.
In some parts of the website, we use assets from Unsplash and Genshin Impact (for the room picture only) in order to make a user-friendly interface and as an example on how to implement a simple personal brand (two topics that we also investigate and research here, as stated above). All rights reserved to their respective owners. We have both acknowledged and cited all of the assets' respective owners in the research paper and in this repository properly.
Following are the scholarly references for this research project.
Alsaqqa, S., Sawalha, S., & Abdel-Nabi, H. (2020). Agile Software Development: Methodologies and Trends. International Journal of Interactive Mobile Technologies (IJIM), 14(11), 246–270. https://doi.org/10.3991/ijim.v14i11.13269
Aottiwerch, N., & Kokaew, U. (2017). Design Computer-assisted Learning in an Online Augmented Reality Environment based on Shneiderman’s Eight Golden Rules. 2017 14th International Joint Conference on Computer Science and Software Engineering (JCSSE), 1–5. https://doi.org/10.1109/JCSSE.2017.8025926
Bianchi, F., Casnici, N., & Squazzoni, F. (2018). Solidarity as a Byproduct of Professional Collaboration: Social Support and Trust in a Coworking Space. Social Networks, 54, 61–72. https://doi.org/10.1016/j.socnet.2017.12.002
Bouncken, R. B., Clauss, T., & Reuschl, A. (2016). Coworking-spaces in Asia: A Business Model Design Perspective. SMS Special Conference Hong Kong 2016.
Bouncken, R. B., Laudien, S. M., Fredrich, V., & Görmar, L. (2018). Coopetition in Coworking-Spaces: Value Creation and Appropriation Tensions in an Entrepreneurial Space. Review of Managerial Science, 12(2), 385–410. https://doi.org/10.1007/s11846-017-0267-7
Davis, F. D. (1989). Perceived Usefulness, Perceived Ease of Use, and User Acceptance of Information Technology. MIS Quarterly, 13(3), 319–340. https://doi.org/10.2307/249008
Dhammayanti, K., Wicaksana, A., & Hansun, S. (2019). Position Placement DSS Using Profile Matching and Analytical Hierarchy Process. International Journal of Scientific & Technology Research, 8(11), 204– 207. http://www.ijstr.org/final-print/nov2019-Position-Placement-Dss-Using-Profile-Matching-AndAnalytical-Hierarchy-Process.pdf
Gonçalves, L. (2018). Scrum: The Methodology to Become More Agile. Controlling & Management Review, 62(4), 40–42. https://doi.org/10.1007/s12176-018-0020-3
Hansun, S. (2013). A new approach of moving average method in time series analysis. 2013 Conference on New Media Studies (CoNMedia), 1–4. https://doi.org/10.1109/CoNMedia.2013.6708545
Hansun, S., & Suryadibrata, A. (2021). Gold Price Prediction in COVID-19 Era. International Journal of Computational Intelligence in Control, 13(2). https://www.mukpublications.com/ijcic-v13-2-2021.php
heroku.com. (n.d.). Heroku. Retrieved June 22, 2021, from https://www.heroku.com/
Hidalgo, E. S. (2019). Adapting the Scrum Framework for Agile Project Management in Science: Case Study of a Distributed Research Initiative. Heliyon, 5(3), e01447. https://doi.org/10.1016/j.heliyon.2019.e01447
Khalid, A., Butt, S. A., Jamal, T., & Gochhait, S. (2020). Agile Scrum Issues at Large-Scale Distributed Projects. International Journal of Software Innovation, 8(2), 85–94. https://doi.org/10.4018/IJSI.2020040106
Mittal, A. (2013). E-commerce: It’s Impact on Consumer Behavior. Global Journal of Management and Business Studies, 3(2), 131–138. https://www.ripublication.com/gjmbs_spl/gjmbsv3n2spl_09.pdf
Nugraha, A., & Hansun, S. (2020). Fiturebot: CS Chatbot Application using Nazief-Adriani Algorithm. International Journal of Emerging Trends in Engineering Research, 8(2), 350–354. https://doi.org/10.30534/ijeter/2020/18822020
Seo, J., Lysiankova, L., Ock, Y.-S., & Chun,