Giter Site home page Giter Site logo

steedos / steedos-platform Goto Github PK

View Code? Open in Web Editor NEW
1.3K 42.0 361.0 1.8 GB

Steedos is an open-source alternative to Salesforce Low-Code Platform. 🤖 🎨 🚀 Built on nodejs, mongodb, react, amis.

Home Page: https://www.steedos.org

License: Other

JavaScript 64.72% TypeScript 16.48% CSS 5.80% HTML 1.92% PLSQL 0.02% CoffeeScript 9.15% Less 0.97% SCSS 0.03% EJS 0.55% PEG.js 0.04% Batchfile 0.01% Dockerfile 0.05% Shell 0.26%
salesforce paas saas low-code no-code odoo amis appsmith budibase lowcode

steedos-platform's Introduction

Steedos

Steedos Platform

中文 · Docs · Steedos Labs

Steedos Low-code PaaS platform is an open-source alternative to Salesforce Platform. It provides a powerful and flexible platform for building enterprise-grade applications quickly and easily.

🤖 🎨 🚀

Click, Not Code

With its intuitive drag-and-drop interface, Steedos empowers both developers and non-technical users to create custom applications without the need for extensive coding knowledge.

  • Design your Data: Steedos provides powerful data management functions, including data modeling, data storage, and data analysis.
  • Building Apps: Drag-and-drop interface for building applications.
  • Secure Your Data: Steedos provides enterprise-level security features to ensure your data is protected at all times.
    • Object Permissions Docs
    • Field Permissions Docs
    • App Permissions Docs
    • Division Docs
    • Sharing Rules Docs
    • Restriction Rules Docs
    • Profiles Docs
    • Permission Sets Docs
  • Automate Your Business Processes: Steedos provides flexible workflow management capabilities that help businesses customize their workflows and improve work efficiency.
    • Automated Actions Docs
    • Workflow Rules Docs
    • Process Approval Docs

Extend Steedos with Code

Metadata can be synchronized as code, version controlled, and automated. For complex business logic, front-end and back-end code can be written to implement it。

Steedos Overview

Steedos DX introduces a new way to organize your metadata and distribute your apps. You can benefit from modern collaboration technologies such as Git to version control everything across your team - your code, your org configuration, and your metadata.

  • create-steedos-app Docs
  • Steedos Packages Docs
  • Metadata Sync with Source Code Docs
  • API Docs
  • Object Triggers Docs
  • Custom API Docs

Enterprise Plugins

Steedos enterprise can seamlessly integrating with third-party open source projects through plugins, to build an integrated PaaS platform for enterprise.

Getting Started

Steedos is essentially a set of npm packages that can be installed over npm.

The easiest way to install Steedos is to use the command line tool that helps you create a template project. You can run this command anywhere in a new empty repository or within an existing repository, it will create a new directory containing the scaffolded files.

npx create-steedos-app my-app
cd my-app
yarn
yarn start

or you can try the following sample projects.

Awesome Steedos Apps

💻 🎉 An awesome & curated list of best applications powered by Steedos Platform.

  • Steedos Projects: Track and manage your projects, milestones, tasks, blocked tasks, overdue tasks, time, expense budgets, and has detailed reporting capabilities.
  • Salesforce CRM Clone: Salesforce alternative, provides everything you need to manage your business. Generate the best leads, manage opportunities through the sales pipleline, and cultivate relationships with exisiting accounts. Plus, forecast revenues, set up sales territories, and organize your reps into selling teams.
  • Contract Management: With contract management software for Steedos, you can centralize contract storage, strengthen compliance, automate and accelerate the entire contract lifecycle, and much more.

Find more

Steedos Docs

For more information, please refer to the official website of docs.steedos.com

Contribute to Steedos Platform

From reporting bugs to proposing improvement suggestions, every contribution is worthy of appreciation and welcome. If you are going to modify the code to fix a bug or implement a new function, please create an issue first, so that we can ensure that your work is not wasted.

See Contributing Guide for how to run and build our platform source code.

Licence

Steedos Platform is licensed under the MIT. Everyone can build and distribute steedos apps for free.

Keep in Contact

If you have any questions or want to talk to other users of Steedos Platform , please jump to GitHub for discussion Click to Discuss.

steedos-platform's People

Contributors

baozhoutao avatar carlwhite2020 avatar chenzhipei avatar dependabot[bot] avatar endlesstravel avatar flyingliao avatar gaohongxins avatar github-actions[bot] avatar hexiapengcom avatar hotlong avatar hotoa avatar joanna93-jj avatar kemen209 avatar lihailong220 avatar lihroff avatar liminglang avatar lizhenghotoa avatar marchtian avatar pukaijiang avatar steedos-private avatar sunhaolin avatar tujiajun avatar wangasdj avatar yicone avatar yinlianghui avatar ylpmikasa avatar ysc1234 avatar zhuangjianguo avatar zonglu666 avatar zyj805 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

steedos-platform's Issues

考虑支持typeorm中关系型数据库各种底层字段类型

目前方案问题:

  • 没有支持更多字段类型,比如:float/decimal/bigint/nvarchar等
  • 在数据类型不一致时,比如number我们转成double了,但是数据库中可能本身是decimal类型的,有可能typeorm会报错,需要测试确认

可能的解决方案:

  • 加一个属性db field type,支持各种类型字段

权限

在odata接口中处理

  • 1. space级 下增,删,改,查权限
  • 2. company级 下增,删,改,查权限
  • 3. 记录级权限:
    -- 缺少owner(记录所有者)处理

继承Creator.baseObject

在创建SteedosObjectType时,Object.assign({}, {base object}, {objectConfig})

  • 1. fields
  • 2. permission_set
  • 3. triggers:server/client
  • 4. actions
  • 5. list views

字段级权限

在objectType中处理,根据用户权限,调整SteedosQueryOptions.fields

oracle 数据库连接

  • 除了翻页其他单元测试都好了
  • 因公司没有12c及以上版本数据库,暂时不能实现相关单元测试
  • 老版本数据库(12c以下)翻页功能是自己拼接sql语句给typeorm执行(服务器数据库版本号通过执行sql单元查出来的)

不可编辑字段要在insert的时候限制吗?

creator那块关于不可编辑字段当时没有说要在insert的时候限制,即不可编辑字段只作用于编辑的时候,所以目前creator没有判断 这块,objectql目前也是按这个规则来处理。

内核参考typeorm的日志功能,实现我们自己的日志功能

参考:https://typeorm.io/#/logging/

  • 看看是不是有可能能直接调用typeorm的相关类及函数
  • 关系型数据库设置了logging参数后,typeorm会自动打日志
  • 对于mongodb,我们最好能实现typeorm类型的日志逻辑,比如开放了logging参数后,自动打印每个数据库连接操作对应的查询条件及参数等,比如find的时候打印出monodb的查询条件
  • 对于其他内核层,需要提供相关日志函数供调用,函数内部自动识别logging参数执行打印日志功能,比如trigger可以调用该函数自动根据logging的级别输出相关日志

master_detail 类型字段的级联删除

此功能待与回收站功能同步开发。

  • 删除子表记录时会将其移入回收站,而将主记录保留原样;
  • 删除主记录时还会删除相关的子表记录和次子表记录。
  • 取消删除子表记录时会恢复该记录
  • 而取消删除主记录时也会取消删除相关的子表记录和次子表记录。
  • 但是,如果您删除一个子表记录,随后又单独删除其主记录,则不能取消删除该子表信息,因为它不再有关联的主记录。

数据导入向导(参考)

任务说明:

  1. 权限开发:
  • 导入对象:并非所有对象都需要导入记录,只有联系人、档案等标准对象需要导入。导入是一个action,

  • 导入前,如果该对象的field字段类型有lookup 、master_detail属性,则需要读取reference_to相关表的所有字段,用户需要选择,导入数据与相关表的哪一字段进行匹配查找。【默认定:按照name字段匹配查找】

  • 导入文件类型(saleforce支持导入csv格式文本文件),creator可支持excel的表格导入。

  1. 导入功能——新增:
  • 选择导入对象,并选择导入的表格文件(safeforce一次支持最多导入50,000条记录)。

  • 选择导入的类型:新增。

  • 配置映射关系:表格的首行标题与导入对象的fields字段建立映射,其中必填字段必须有映射。

  • 导入数据:循环每一条的记录,并循环判断每条记录的导入数据格式与映射字段格式是否一致,如果某个字段的数据格式异常,则暂存该条记录,同时设置该字段值为空

  • 显示导入结果:提示导入数据的结果,并显示暂存的错误记录以及错误原因(salesforce导入完成后,是将结果发送至邮箱,每条错误记录和原因保存在邮件的附件中)。

3.导入功能——更新

  • 选择导入对象,并选择导入的表格文件(safeforce一次支持最多导入50,000条记录)。

  • 选择导入的类型:更新。更新必须选择需要匹配的字段。

  • 更新数据:循环每一条的记录,根据匹配字段查找。找不到则报错,找到后循环判断导入数据格式与映射字段格式是否一致,如果某个字段的数据格式异常,则暂存该条记录,同时设置该字段值为空

  • 显示导入结果:提示导入数据的结果,并显示暂存的错误记录以及错误原因(salesforce导入完成后,是将结果发送至邮箱,每条错误记录和原因保存在邮件的附件中)。

4.导入功能——相关表导入

  • 相关表映射:如果导入的对象是其他对象的子表,也可以选择映射到相关表的字段。

  • 匹配找的相关表不存在或存在多个怎么办。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.