The certificate reader for the travel industry is a application that gathers data of travel industry certificates in Finland under one roof.
The target group for the reader includes regional travel organisations, companies in the industry and travelers interested in responsible travel.
Users can search for travel industry companies by their name, vat-number, municipality or by the certificates they have.
The application allows the user to save the data either by saving the link to the company / certificate page or by printing the search results.
The application is built with TypeScript, React and Next.js.
The user interface of the application is styled using MUI components.
The data is fetched by scraping certificate provider websites with Node.js functions and saved to a PostgreSQL database.
The data scraping and API can be found in separate repo at https://github.com/Dataatti/sertifikaattilukija-api
Clone the repository
git clone https://github.com/Dataatti/sertifikaattilukija.git
Change to the project directory
cd sertifikaattilukija
Environment variables have to be set before running the application.
Either copy .env.example to local .env file and update values
cp .env.example .env
or set them in a environment specific way (if you are running the application in a cloud provider for example).
Variable | Value |
---|---|
NEXT_PUBLIC_API_URL | Full url of the Sertifikaattilukija-api instance |
Install project dependencies based on lockfile
npm ci
Run the development server
npm run dev
Open http://localhost:3000 with your browser to see the result.
Cypress tests are run against all pull requests by a quality check Github action.
Run E2E tests headlessly
npm run cypress
Open Cypress for developing E2E tests
npm run cypress:open
Data scraping and database are found in a separate repository in sertifikaattilukija-api.
The list of scraped certificate websites is based on the certificates that are part of Business Finland's Sustainable Travel Finland program.