The source code to the civic tech project Öppna Skolplattformen.
Go to file
Rickard Natt och Dag f223eed808
chore: update root dependencies (#274)
2021-04-15 17:06:03 +02:00
.github Added audit step so we catch any evental security issues in the build step 2021-03-29 08:46:19 +02:00
k8s prepare for new domain skolplattformen.org 2020-12-14 18:21:43 +01:00
packages chore: update root dependencies (#274) 2021-04-15 17:06:03 +02:00
.gitignore ignore user settings 2020-12-20 14:02:31 +01:00
.nvmrc chore: update root dependencies (#274) 2021-04-15 17:06:03 +02:00
.releaserc chore: automatiskt changelog via semantic-release (#170) 2021-02-21 15:51:04 +01:00
CHANGELOG.md chore(release): 1.15.0 [skip ci] 2021-04-13 15:47:20 +02:00
LICENSE Create LICENSE 2021-02-11 22:55:48 +01:00
README.md docs: Improve README (#270) 2021-04-14 11:47:44 +02:00
lerna.json fix: 🐛 Removed lerna workspaces 2021-02-08 19:26:22 +01:00
package.json chore: update root dependencies (#274) 2021-04-15 17:06:03 +02:00
skaffold.yaml prepare for new domain skolplattformen.org 2020-12-14 18:21:43 +01:00
yarn.lock chore: update root dependencies (#274) 2021-04-15 17:06:03 +02:00

README.md

Skolplattformen.org

Öppna skolplattformen is an attempt at reverse-engineering Skolplattformen to create a faster, more consistent, and secure experience.

Login screen

Architecture

The project consists of two main parts: the app and the embedded API.

App

The central part of the project is the app itself. It's written in TypeScript using React Native and React Native Kitten.

Our goal with the app is to make it as fast and easy to use as possible. We're starting small, with more features being added over time.

For more information, check out the source code.

Pro tip: If you don't want the API to make requests to the backend, you can enable fake mode to return static data instead. To enable fake mode, log in using any of the following personal numbers:

  • 12121212121212
  • 1212121212

Embedded API

We first tried to create a proxy for the API. That was a bad idea. Even if the proxy wouldn't save any information it would still have introduced extra complexity.

Instead, we decided to encapsulate our API into its own npm package. By not having to worry about the complex nature of the official API, the app becomes light-weight.

For more information on the embedded API, refer to the project page.

Note: To make it easier to use the embedded API in the app, we also created a set of React hooks.

Website

The official site for the project is https://skolplattformen.org.

The source code for the site is available under packages/site.

Development

To build the project yourself, you first need to install the required dependencies:

npx lerna bootstrap

Once all the dependencies are installed, refer to the README in each package for further instructions.

Contributions

We want this project to become a citizen movement. If you find something you think needs to be fixed, we encourage you to fix the problem yourself and test it out on your machine first. When you're done, create a pull request where you explain why we should incorporate your fix into the project.

We believe that by working together, we can leverage each other's skills and experiences to improve the project, and ultimately create a better experience, faster.

There are many ways to contribute to the project. If you don't know how to program and still want to help, you can also file an issue to let us know if something isn't working properly.

We're super duper happy for both issues and pull requests and we try to answer all of them as soon as humanly possible.

Money

We're an open source project and we still charge money for our app. Isn't this a contradiction? No. Open doesn't mean free. We want to continue to maintain this project in a sustainable way, which means that someone needs to pay for the köttbullar for the kids. Our goal is to be able to reimburse all contributions to the project.

Disclaimer

This initiative was started by frustrated parents with no affiliation with Stockholm Stad. We just want to find and read our newsletters a little bit easier, and register sick-leave a little more conveniently.

If you're offended by this initiative, please don't be—we come in peace.

Contributors

License

Apache 2.0