...
JavaScript to know for React - Kent C. Dodds(opens in a new tab)
Visual guide to references in JavaScript(opens in a new tab)
React
The official docs(opens in a new tab) are a great way to get acquainted with React. Don't gloss over the fundamentals(opens in a new tab)! Having a solid understanding of its core concepts is very important in helping you learn how to develop high-quality frontend modules in O3. We also recommend going through the following resources:
Common mistakes with React - Josh Comeau(opens in a new tab)
Writing Resilient Components - Dan Abramov (dated but still very useful)(opens in a new tab)
A (Mostly) Complete Guide to React Rendering Behavior - Mark Erikson(opens in a new tab)
Beginners Guide to React - Kent C. Dodds (dated but still very useful)(opens in a new tab)
React Re-renders Guide - Nadia Makarevich(opens in a new tab)
When Does React Render Your Component - Zhenghao hao(opens in a new tab)
TypeScript
Most of our code is written in TypeScript. We recommend going through the following resources:
JavaScript tooling
yarn(opens in a new tab) - we use yarn as our package manager. Generally, if the repository you're looking at has a
yarn.lock
file at its root, it uses yarn. We leverage yarn's workspaces(opens in a new tab) for versioning and publishing packages within our monorepos.turbo(opens in a new tab) - we use
turbo
to run scripts during local development and our continuous integration processes.swc(opens in a new tab) - we use SWC to compile our JavaScript and TypeScript code into a format all major browsers support.
webpack(opens in a new tab) - we use webpack to bundle our code for production. We use webpack 5(opens in a new tab), which is the latest version of webpack at the time of writing.
...
It is imperative that you keep your code in a version control system. OpenMRS uses Git(opens in a new tab). You should know the basics of using Git and GitHub. Great learning resources include:
OpenMRS
OpenMRS provides various APIs through which the frontend can request data. We recommend acquainting yourself with the documentation of these APIs as well as the OpenMRS data model. Find the relevant links below:
Next steps
Ready to jump in? It's time to learn about the key repositories in the O3 ecosystem and how they work together. Head over to the next section to learn more.
...