Difference between revisions of "Pas2js How to contribute"

From Lazarus wiki
Jump to navigationJump to search
(Created page with "=How to contribute to Pas2js= Here are some fields where you can help the pas2js project. If you want to help give us a note on the mailing list, so we can help you. == Spre...")
 
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=How to contribute to Pas2js=
+
You want to help the pas2js project and don't know how?
  
Here are some fields where you can help the pas2js project. If you want to help give us a note on the mailing list, so we can help you.
+
Here are some ideas. If you want to help give us a note on the mailing list, so we can help you.
  
== Spread the word ==
+
= Spread the word =
  
 
Post on social media, organize meetings
 
Post on social media, organize meetings
  
== Answer newbie question on forums and mailing lists ==
+
= Answer newbie question on forums and mailing lists =
 
* Official mailing list (English): http://lists.freepascal.org/cgi-bin/mailman/listinfo/pas2js
 
* Official mailing list (English): http://lists.freepascal.org/cgi-bin/mailman/listinfo/pas2js
 
* Pas2js board on Lazarus forum: http://forum.lazarus-ide.org/index.php/board,76.0.html
 
* Pas2js board on Lazarus forum: http://forum.lazarus-ide.org/index.php/board,76.0.html
  
== Write an overview, what units/packages already exist and what they provide ==
+
= Write an overview, what units/packages already exist and what they provide =
  
 
For example a wiki page with a list of all units and their classes with one or two sentences for each unit/class.
 
For example a wiki page with a list of all units and their classes with one or two sentences for each unit/class.
  
== Easier quick start ==
+
= Easier quick start =
  
 
* Write a better installer
 
* Write a better installer
Line 32: Line 32:
 
* Wiki: Register a user in the wiki and write a page how to use pas2js with library X, or how to port Delphi code, or how to use pas2js in editor Y, etc
 
* Wiki: Register a user in the wiki and write a page how to use pas2js with library X, or how to port Delphi code, or how to use pas2js in editor Y, etc
 
* or create a Youtube tutorial
 
* or create a Youtube tutorial
 +
* Donate examples. Every example that demonstrates what can be done is welcome !
  
 
= Write external classes for importing JS libraries =
 
= Write external classes for importing JS libraries =
Line 46: Line 47:
 
= WidgetSet =
 
= WidgetSet =
  
As pas2js is maturing, the next step is to write a widgetset.
+
As pas2js is maturing, the next step is to write a widgetset.  
 +
Some efforts are underway: [[pas2js_widgetsets]]
 +
 
 +
The end goal is a a widgetset that can be used to underpin the LCL.
 +
But a widgetset should be usable without having to use the LCL:
 +
When developing for web, the mechanisms of a desktop development environment are not always suitable.
 +
 
 +
= Navigation =
 +
 
 +
* [[pas2js]]
 +
* [[lazarus_pas2js_integration|Lazarus integration]]
 +
* [[pas2js_widgetsets|WidgetSets]]
 +
[[Category:Pas2js]]

Latest revision as of 14:59, 1 July 2019

You want to help the pas2js project and don't know how?

Here are some ideas. If you want to help give us a note on the mailing list, so we can help you.

Spread the word

Post on social media, organize meetings

Answer newbie question on forums and mailing lists

Write an overview, what units/packages already exist and what they provide

For example a wiki page with a list of all units and their classes with one or two sentences for each unit/class.

Easier quick start

  • Write a better installer
  • or a better wiki page how to quick start from nil to the first webapp.
  • or extend pas2jsdsgn with a button to download and setup pas2js
  • or a script to create rpm/deb/dmg packages

Lazarus help

Help for pas2js units on F1:

  • fpdoc files
  • or external help entries

Simple HOWTOs

  • Wiki: Register a user in the wiki and write a page how to use pas2js with library X, or how to port Delphi code, or how to use pas2js in editor Y, etc
  • or create a Youtube tutorial
  • Donate examples. Every example that demonstrates what can be done is welcome !

Write external classes for importing JS libraries

  • If a JS library has an IDL, use the webidl tool to auto create a basic Pascal unit for it, and if needed improve it manually
  • Use class2pas unit to create a rough Pascal representation, then use the documentation to fill the gaps (create some types).

Help in compiler

The whole compiler is open source, so everyone can improve it and send patches.

WidgetSet

As pas2js is maturing, the next step is to write a widgetset. Some efforts are underway: pas2js_widgetsets

The end goal is a a widgetset that can be used to underpin the LCL. But a widgetset should be usable without having to use the LCL: When developing for web, the mechanisms of a desktop development environment are not always suitable.

Navigation