Wiki source code of Track 5: Contribute to the core
Last modified by Lucas Charpentier (Sereza7) on 2024/03/25 12:50
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{box cssClass="floatinginfobox" title="**Contents**"}} | ||
2 | {{toc/}} | ||
3 | {{/box}} | ||
4 | |||
5 | = Task 1: Local tools setup = | ||
6 | |||
7 | Ok you've decided that you want to contribute to XWiki. Then you should set up your development environment in the same way as the XWiki committers do! | ||
8 | |||
9 | In practice you need to: | ||
10 | |||
11 | * Install Git and [[clone some XWiki repos you want to work on>>doc:Community.SourceRepository]] | ||
12 | * Install Maven and [[build some XWiki module>>doc:Community.Building.WebHome]], see task 2 below. | ||
13 | * Install and setup your IDE: [[Eclipse instructions>>doc:Community.BuildingInEclipse]], [[IntelliJ IDEA instructions>>doc:Community.BuildingInIdea]]. You can use any other IDE you prefer too. | ||
14 | |||
15 | {{info}} | ||
16 | If you have questions feel free to ask on [[the chat>>doc:Community.Chat]]. | ||
17 | {{/info}} | ||
18 | |||
19 | = Task 2: Build XWiki = | ||
20 | |||
21 | Just to get the kick of it, let's try to build some modules of XWiki: | ||
22 | |||
23 | 1. Navigate to your ##xwiki-platform## folder and run ##git pull## to have the latest sources | ||
24 | 1. Navigate to ##xwiki-platform/xwiki-platform-distribution/xwiki-platform-distribution-flavor/xwiki-platform-distribution-flavor-jetty-hsqldb## and build it with ##mvn clean install## | ||
25 | 1. Execute XWiki by doing the following: | ||
26 | 11. Navigate to ##target/## directory and unzip the generated ##xwiki-platform-distribution-flavor-jetty-hsqldb-<version>.zip## file | ||
27 | 11. Navigate inside the unzipped content and run ##sh start_xwiki.sh## | ||
28 | 11. Open your browser and point it to ##[[http://localhost:8080]]##. Verify that XWiki initializes and displays the home page | ||
29 | |||
30 | = Task 3: Contribute = | ||
31 | |||
32 | There are [[various ways to contribute>>doc:Community.Contributing]] to XWiki. Pick one that you're interested in. | ||
33 | |||
34 | == Code Contribution == | ||
35 | |||
36 | We suggest you pick some [[Onboarding issue>>https://jira.xwiki.org/issues/?jql=labels%20%3D%20Onboarding%20and%20resolution%20%3D%20Unresolved%20]] from our [[issue tracker>>https://jira.xwiki.org/secure/Dashboard.jspa]] and that you start implementing it. | ||
37 | |||
38 | Please follow [[our coding standard and practices>>dev:Community.CodeStyle]] as much as possible but don't worry if you make mistakes, you'll send a Pull Request and some committer will review it, helping you along the way ;) | ||
39 | |||
40 | You can also find some instructions on the [[Contributing page>>dev:Community.Contributing||anchor="HFixingbugsornewFeatures2FImprovements"]]. | ||
41 | |||
42 | Make especially sure to follow our [[JIRA practices>>dev:Community.DevelopmentPractices||anchor="HJIRABestPractices"]] and that the code passes the [[code acceptance criteria>>Community.Contributing||anchor="HFixingbugsornewFeatures2FImprovements"]]. | ||
43 | |||
44 | = Task 4: Join the Forum = | ||
45 | |||
46 | It's generally a good idea to join the [[forum>>Community.Discuss||anchor="HForum"]] where the core committers and contributors talk about the XWiki product (features, APIs, future, events organization, etc.). |