Sign inSign up

implem/pleasanter

By implem

Updated 9 days ago

Pleasanter is a development platform that utilizes both no-code and low-code approaches.

Image
8

100K+

implem/pleasanter repository overview

Pleasanter logo

1. Overview

Pleasanter is an open-source, .NET-based development platform for building business applications using no-code and low-code approaches. Pleasanter allows rapid creation of internal systems such as:

  • CRM
  • SFA
  • Issue tracking
  • Project management
  • Document management
  • Image databases

The platform provides extensibility through scripts, APIs, and SQL, enabling integration with existing enterprise systems.

2. Key Features

  • Application development
    • No-code business application development
    • Low-code customization using scripts
    • REST API for integration
  • Data management
    • Table-based data model
    • Table relationships
    • Data history tracking
    • Status management and workflow
  • Visualization
    • Calendar
    • Gantt chart
    • Burndown chart
    • Timeseries
    • Crosstab
    • Kanban board
    • Image library
  • Collaboration
    • Email notifications
    • Chat integration (Slack, Teams, etc.)
  • Security
    • Access control at table / row / column level
    • LDAP authentication
    • SAML authentication
    • Two-factor authentication
    • Passkey authentication
  • Internationalization (Supported languages)
    • English
    • Japanese
    • Chinese
    • German
    • Korean
    • Spanish
    • Vietnamese
  • Extensibility
    • Front-end JavaScript / CSS extensions
    • Server-side JavaScript extensions
    • SQL extensions
    • API integration

3. Requirements

ComponentSupported
OSWindows / Linux
Framework.NET 8 (LTS) / .NET 10 (LTS)
DatabaseSQL Server / PostgreSQL / MySQL

4. Supported Platforms for Docker Image

The Pleasanter and CodeDifiner Docker image is available for the following platforms:

  • linux/amd64
  • linux/arm64

Docker automatically pulls the image matching your host platform.
To pull a specific platform explicitly, use the --platform option:

5. Getting Started

This section describes how to run Pleasanter locally for evaluation.
Here, we use PostgreSQL as a backend database.

  1. Create a directory named "pleasanter" in any location and store two files there.

    pleasanter/  
    ├── .env  
    └── compose.yaml
    
  2. Configure .env

    "{{ ... }}" should be modified accordingly.

    POSTGRES_VERSION={{PostgreSQL Version}}
    POSTGRES_VOLUMES_TARGET=/var/lib/postgresql/data
    POSTGRES_USER={{Sa User}}
    POSTGRES_PASSWORD={{Sa Password}}
    POSTGRES_DB={{System DB}}
    POSTGRES_HOST_AUTH_METHOD=scram-sha-256
    POSTGRES_INITDB_ARGS=--encoding=UTF-8
    PLEASANTER_VERSION={{Pleasanter Version}}
    Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString='Server=db;Database={{System DB}};UID={{Sa User}};PWD={{Sa password}}'
    Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString='Server=db;Database=#ServiceName#;UID=#ServiceName#_Owner;PWD={{Owner password}}'
    Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString='Server=db;Database=#ServiceName#;UID=#ServiceName#_User;PWD={{User password}}'
    
  3. Configure compose.yaml

    services:
      db:
        container_name: postgres
        image: postgres:${POSTGRES_VERSION}
        environment:
          - POSTGRES_USER
          - POSTGRES_PASSWORD
          - POSTGRES_DB
          - POSTGRES_HOST_AUTH_METHOD
          - POSTGRES_INITDB_ARGS
        volumes:
          - type: volume
            source: pg_data
            target: ${POSTGRES_VOLUMES_TARGET}
        healthcheck:
          test:
            [
              "CMD-SHELL",
              "pg_isready -U $${POSTGRES_USER:-postgres} -d $${POSTGRES_DB:-postgres} || exit 1",
            ]
          interval: 10s
          timeout: 5s
          retries: 5
          start_period: 30s
        restart: unless-stopped
      pleasanter:
        container_name: pleasanter
        image: implem/pleasanter:${PLEASANTER_VERSION}
        restart: unless-stopped
        depends_on:
          db:
            condition: service_healthy
        ports:
          - '50001:8080'
        environment:
          Implem.Pleasanter_Rds_PostgreSQL_SaConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString}
          Implem.Pleasanter_Rds_PostgreSQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString}
          Implem.Pleasanter_Rds_PostgreSQL_UserConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString}
      codedefiner:
        container_name: codedefiner
        image: implem/pleasanter:codedefiner
        depends_on:
          db:
            condition: service_healthy
        environment:
          Implem.Pleasanter_Rds_PostgreSQL_SaConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_SaConnectionString}
          Implem.Pleasanter_Rds_PostgreSQL_OwnerConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_OwnerConnectionString}
          Implem.Pleasanter_Rds_PostgreSQL_UserConnectionString: ${Implem_Pleasanter_Rds_PostgreSQL_UserConnectionString}
    volumes:
      pg_data:
        name: ${COMPOSE_PROJECT_NAME:-default}_pg_data_volume
    
  4. Pull images

    docker compose pull
    
  5. Initialize the database

    Run CodeDefiner to initialize the database schema. "{{ ... }}" should be modified accordingly.

    docker compose run --rm codedefiner _rds /l "{{Language}}" /z "{{Timezone}}"
    

    To suppress prompts, run with the /y option.

    docker compose run --rm codedefiner _rds /l "ja" /z "Asia/Tokyo" /y
    
  6. Start Pleasanter

    docker compose up -d pleasanter
    

    Access Pleasanter:

    http://localhost:50001
    

    Default login:

    Login IDPassword
    Administratorpleasanter

    For security reasons, change the administrator password after the first login.

  7. Stop the system

    docker compose down
    
5.2. Start with Demo

You can try the demo just by registering your email address:
Register Demo (Japanese only)

6. Documentation

Official documentation: User Manual (Partially available in English)

7. License

This project is licensed under the AGPL-3.0 license.

8. Authors

Developed by IMPLEM Inc.

Tag summary

Content type

Image

Digest

sha256:103e0777d

Size

259.4 MB

Last updated

9 days ago

docker pull implem/pleasanter