No announcement yet.
This is a sticky topic.
  • Filter
  • Time
Clear All
new posts

    Announcing SmartClient Server for Node.js: free and open source!

    Node.js is a popular server platform that allows coding in JavaScript.
    By using Node.js in combination with SmartClient, you can use the same language for both client and server-side programming.

    Our new SmartClient Server for Node.js provides many of the features of the SQLDataSource from our Java server, including all CRUD operations, sorting and filtering.
    Server-side DataSources are expressed in a XML (.ds.xml) or JSON (.ds.js) format analogous to the format used by our Java server.

    We've also got support for the NPM package manager.
    smartclient-node is a package you can use to run your SmartClient server in minutes.


    1. Install Node.js
    2. Create new directory
    mkdir my-server && cd my-server
    3. Initialize your project (create package.json file)
    npm init
    4. Add smartclient-node dependency to your project
    npm install -S smartclient-node
    Installation process will ask following questions:
    Destination directory [/home/user/my-server/]:
    Download SmartClient evaluation runtime (WARN: overwrites existing web/isomorphic directory)? [yes]:
    Install sample (WARN: overwrites existing index.html file)? [yes]:
    Accept defaults. You can always repeat installation by running
    5. Start your server
    6. Go to your browser and access localhost:8080


    Installation process creates configuration file conf/ Update this file with your values.
    Server should be restarted for changes to take effect.

    Current status
    • Supports RPC calls without method arguments
      • Queued operations (more than one operation in a single HTTP request)
    • Supports SQL data sources for MySQL and PostgreSQL
      • CRUD operations
      • Queued operations (more than one DataSource operation in a single HTTP request)
      • Paging
      • Sorting
      • Simple filtering
      • Filtering with Advanced criteria
    • Supports JSON data source: data is stored in file in JSON format
      • CRUD operations
      • only supports client-side filtering and sorting
    • Supports REST calls

    Try it now and tell us how did it go! Your feedback is highly welcome! Post your thoughts, suggestions, questions and requests right here in this thread.


    smartclient-node is released under LGPL-3.0 license.
    Source code can be found on GitHub:

    If you see how to improve it - do it. Fork it. Create pull request. Post code snippet.
    Your contributions make this project better for everyone.


    This project is not currently covered by standard support agreements, but we offer very affordable consulting and support services by arrangement - use Contact Us page to get started.