About • Tech Stack • Getting Started • Development • Deployment • Contributing • Licensing
This repository hosts the source code for the reference implementation of the iGrant.io Dataspace Portal. The portal provides a user interface for managing data agreements, credentials, and B2B connections within the iGrant.io ecosystem.
| Technology | Version | Purpose |
|---|---|---|
| Next.js | 15.x | React framework with App Router |
| React | 19.x | UI library |
| TypeScript | 5.x | Type-safe JavaScript |
| Material-UI | 7.x | Component library |
| Redux Toolkit | 2.x | State management |
| TanStack Query | 5.x | Server state management |
| next-intl | 4.x | Internationalization (en, fi, sv) |
| Tailwind CSS | 4.x | Utility-first CSS |
- Node.js 20.x or higher
- npm 10.x or higher
- Docker (optional, for containerized deployment)
-
Clone the repository:
git clone https://github.com/decentralised-dataexchange/data-space-portal.git cd data-space-portal -
Install dependencies:
npm install
-
Create environment configuration:
cp .env.example .env.local
Update the environment variables as needed.
-
Start the development server:
npm run dev
-
Open http://localhost:3000 in your browser.
| Command | Description |
|---|---|
npm run dev |
Start development server with Turbopack |
npm run build |
Build for production |
npm run start |
Start production server |
npm run lint |
Run ESLint |
src/
├── app/ # Next.js App Router pages
│ └── [locale]/ # Internationalized routes
├── components/ # React components
│ ├── common/ # Shared/reusable components
│ └── ... # Feature-specific components
├── custom-hooks/ # Custom React hooks
├── lib/ # API services and utilities
├── store/ # Redux store and reducers
├── types/ # TypeScript type definitions
├── utils/ # Utility functions
└── constants/ # Application constants
The API base URL is configured in src/constants/url.ts:
export const baseURL = "https://api.nxd.foundation";
// export const baseURL = "http://localhost:8000";To use a different API endpoint:
- Open
src/constants/url.ts - Update the
baseURLvalue to your API server address - Restart the development server
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
If you find any problems, please create an issue in this repository.
Copyright (c) 2023-25 LCubed AB (iGrant.io), Sweden
Licensed under the Apache 2.0 License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the LICENSE for the specific language governing permissions and limitations under the License.