LogoLogo
  • Technical Direction
  • Technical overview
    • Technical Implementation
    • API Design Guide
      • Data Definitions and Standards
      • Data Transfer Objects
      • Documentation
      • Environments
      • Error Handling
      • Example API Service
      • GraphQL Naming Conventions
      • Methods
      • Naming Conventions
      • Once Only Principle
      • Pagination
      • Resource Oriented Design
      • REST Request
      • REST Response
      • Security
      • Versioning
    • Ísland.is Public Web Data Flow
    • Code Reviews
    • Code Standards
    • Monorepo
    • Project Management
    • Teamwork
    • Architectural Decision Records
      • Use Markdown Architectural Decision Records
      • Use NX
      • Continuous Integration
      • CSS
      • Branching and Release Strategy
      • Error Tracking and Monitoring
      • What API Management Tool to Consider
      • Viskuausan Static Site Generator
      • Use OAuth 2.0 and OpenID Connect As Protocols for Authentication and Authorization
      • Unified Naming Strategy for Files and Directories
      • CMS
      • Open Source License
      • What Chart Library Should We Use Across Island.is?
      • What Feature Flag Service/application Should We Use at Island.is?
      • Logging, Monitoring and APM Platform
      • ADR Template
    • Log Management Policy
  • Products
    • Island.is Authentication Service
      • Terminology
      • Integration Options
      • Authentication Flows
      • Authorising API Endpoints
      • Session Lifecycle
      • Scopes and Tokens
      • Delegations
      • Configuration
      • Tools and Examples
      • Environments
      • Test IAS with Postman
      • Using the IAS admin portal
    • Notifications / Hnipp
      • New Notification Setup Guide
      • Notifications service workflow overview
      • Email notifications
    • Pósthólfið
      • Security Checklist
      • Introduction
      • Skjalatilkynning API
      • Skjalaveita API
      • Sequence Diagram
      • Interfaces
    • Straumurinn (X-Road)
      • Architecture Guidelines for Service Providers and Consumers
      • Setting up an X-Road Security Server
        • Network Configuration
      • X-Road - Uppfærsla á öryggisþjónum
      • Straumurinn - Notkun og umsýsla
      • X-Road Central - current version
  • Development
    • Getting Started
    • Generating a New Project
    • Definition of done
    • Devops
      • Continuous Delivery
      • Database
      • Dockerizing
      • Environment Setup
      • Logging
      • Metrics
      • NextJS Custom Server
      • Observability
      • Operations Base Principles
      • Security
      • Service Configuration
      • Support
    • AWS Secrets
    • Feature Flags
    • Documentation Contributions
    • Defining Monorepo Boundaries With Tags
    • OpenAPI
    • Code Generation
    • Workspace Settings (Deprecated)
    • External Contributions
  • REFERENCE
    • Problems
      • 400 Validation Failed
      • 400 Attempt Failed
      • 403 Bad Subject
      • 400 500 Template API Error
    • Glossary
  • Misc
    • Guide: Adding a Payment Step to an Application
    • Guide: Enable Organisations to Make Requests to an Application
    • README Template
Powered by GitBook
On this page
  • Getting started
  • API and Web
  • Workflow
  • Style Guide

Was this helpful?

  1. Development

External Contributions

PreviousWorkspace Settings (Deprecated)NextProblems

Last updated 1 year ago

Was this helpful?

While we are still heavily working on improving this section, we appreciate, for now, assistance with security reviews (more eyes = better), documentation, and small fixes.

Getting started

Ísland.is repository contains many projects and libraries. As you can imagine, it depends of many external services and APIs. In result, we need many credentials if we want to run all the projects.

While we are still working on solutions to help external developers to run all the projects, we already implemented some solutions for you.

We have a that can be setup individually on project to replace the usage of external services, like Contentful, and run dummy data instead.

API and Web

At the moment, only the project is using the Mock library, but as a result, it allows you to run the project.

To run a project with the Mock library, add the following to your .env file:

API_MOCKS=true

To find out how to run the website, check out the detail on its .

Workflow

You can follow this free videos series on if you are not familiar with the GitHub development workflow.

Many people are working on the project and any PR will be noticed very quickly. When doing changes to a specific file, a code owner will be found and assigned as a reviewer for your PR. When the necessary approval will be reached, the PR will be in a state of merging. In this case, we will add a automerge label that will handle the merge with main automatically.

Before you submit your PR, please make sure to follow the following steps:

  • Base your work on the main branch.

  • If you fixed a bug or added a new feature, and existing tests already existed, make sure the tests are still passing, and add more if needed.

  • Run the and for you changes locally.

  • your changes to follow NX code conventions.

  • You are ready to go.

Style Guide

We use and to automatically enforce most of our .

To your code.

To your code.

Prettier
ESLint
Code Standards
Mock library
api
web
documentation
How to Contribute to an Open Source Project on GitHub
tests
lint
Format
format
lint