Sign inSign up

implem/pleasanter

By implem

•Updated about 1 month 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

about 1 month ago

docker pull implem/pleasanter