A self hosted chat application with end-to-end encrypted messaging.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

238 lines
7.7 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <parent>
  5. <groupId>org.springframework.boot</groupId>
  6. <artifactId>spring-boot-starter-parent</artifactId>
  7. <version>2.1.16.RELEASE</version>
  8. <relativePath />
  9. </parent>
  10. <groupId>org.ros</groupId>
  11. <artifactId>Chatto</artifactId>
  12. <version>0.0.1-SNAPSHOT</version>
  13. <packaging>jar</packaging>
  14. <name>chatto</name>
  15. <description>A self hosted minimal E2E chat application</description>
  16. <properties>
  17. <java.version>11</java.version>
  18. <gruntArg></gruntArg>
  19. </properties>
  20. <dependencies>
  21. <dependency>
  22. <groupId>org.springframework.boot</groupId>
  23. <artifactId>spring-boot-starter-data-jpa</artifactId>
  24. </dependency>
  25. <dependency>
  26. <groupId>org.springframework.boot</groupId>
  27. <artifactId>spring-boot-starter-web</artifactId>
  28. </dependency>
  29. <dependency>
  30. <groupId>org.springframework.boot</groupId>
  31. <artifactId>spring-boot-devtools</artifactId>
  32. <scope>runtime</scope>
  33. <optional>true</optional>
  34. </dependency>
  35. <dependency>
  36. <groupId>mysql</groupId>
  37. <artifactId>mysql-connector-java</artifactId>
  38. <scope>runtime</scope>
  39. </dependency>
  40. <dependency>
  41. <groupId>org.springframework.boot</groupId>
  42. <artifactId>spring-boot-starter-tomcat</artifactId>
  43. <scope>provided</scope>
  44. </dependency>
  45. <dependency>
  46. <groupId>org.springframework.boot</groupId>
  47. <artifactId>spring-boot-starter-test</artifactId>
  48. <scope>test</scope>
  49. </dependency>
  50. <dependency>
  51. <groupId>org.springframework.boot</groupId>
  52. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  53. </dependency>
  54. <dependency>
  55. <groupId>org.springframework.boot</groupId>
  56. <artifactId>spring-boot-starter-security</artifactId>
  57. </dependency>
  58. <dependency>
  59. <groupId>org.springframework.security</groupId>
  60. <artifactId>spring-security-test</artifactId>
  61. <scope>test</scope>
  62. </dependency>
  63. <!-- <dependency>
  64. <groupId>com.github.ulisesbocchio</groupId>
  65. <artifactId>jasypt-spring-boot-starter</artifactId>
  66. <version>2.1.2</version>
  67. </dependency> -->
  68. <dependency>
  69. <groupId>org.projectlombok</groupId>
  70. <artifactId>lombok</artifactId>
  71. </dependency>
  72. <dependency>
  73. <groupId>org.modelmapper</groupId>
  74. <artifactId>modelmapper</artifactId>
  75. <version>2.3.5</version>
  76. </dependency>
  77. <dependency>
  78. <groupId>org.springframework.boot</groupId>
  79. <artifactId>spring-boot-starter-cache</artifactId>
  80. </dependency>
  81. <dependency>
  82. <groupId>org.ehcache</groupId>
  83. <artifactId>ehcache</artifactId>
  84. </dependency>
  85. <dependency>
  86. <groupId>javax.cache</groupId>
  87. <artifactId>cache-api</artifactId>
  88. </dependency>
  89. <dependency>
  90. <groupId>javax.xml.bind</groupId>
  91. <artifactId>jaxb-api</artifactId>
  92. </dependency>
  93. <dependency>
  94. <groupId>org.glassfish.jaxb</groupId>
  95. <artifactId>jaxb-runtime</artifactId>
  96. </dependency>
  97. <dependency>
  98. <groupId>org.thymeleaf.extras</groupId>
  99. <artifactId>thymeleaf-extras-springsecurity5</artifactId>
  100. </dependency>
  101. <dependency>
  102. <groupId>org.flywaydb</groupId>
  103. <artifactId>flyway-core</artifactId>
  104. <scope>compile</scope>
  105. </dependency>
  106. <dependency>
  107. <groupId>com.spencerwi</groupId>
  108. <artifactId>Either.java</artifactId>
  109. <version>2.2.0</version>
  110. </dependency>
  111. </dependencies>
  112. <build>
  113. <plugins>
  114. <plugin>
  115. <groupId>org.springframework.boot</groupId>
  116. <artifactId>spring-boot-maven-plugin</artifactId>
  117. </plugin>
  118. <plugin>
  119. <groupId>org.codehaus.mojo</groupId>
  120. <artifactId>properties-maven-plugin</artifactId>
  121. <version>1.0.0</version>
  122. <executions>
  123. <execution>
  124. <phase>initialize</phase>
  125. <goals>
  126. <goal>read-project-properties</goal>
  127. </goals>
  128. <configuration>
  129. <files>
  130. <file>src/main/resources/application.properties</file>
  131. </files>
  132. </configuration>
  133. </execution>
  134. </executions>
  135. </plugin>
  136. <plugin>
  137. <groupId>org.flywaydb</groupId>
  138. <artifactId>flyway-maven-plugin</artifactId>
  139. <version>5.2.4</version>
  140. <!-- <executions>
  141. <execution>
  142. <phase>generate-sources</phase>
  143. <goals>
  144. <goal>migrate</goal>
  145. </goals>
  146. </execution>
  147. </executions> -->
  148. <configuration>
  149. <driver>${spring.datasource.driverClassName}</driver>
  150. <url>jdbc:mysql://${chatto.datasource.url}:${chatto.datasource.port}/${chatto.datasource.database-name}</url>
  151. <user>${chatto.datasource.username}</user>
  152. <password>${chatto.datasource.password}</password>
  153. </configuration>
  154. </plugin>
  155. <plugin>
  156. <groupId>com.github.eirslett</groupId>
  157. <artifactId>frontend-maven-plugin</artifactId>
  158. <version>1.9.1</version>
  159. <configuration>
  160. <workingDirectory>.</workingDirectory>
  161. </configuration>
  162. <executions>
  163. <execution>
  164. <id>install node and yarn</id>
  165. <goals>
  166. <goal>install-node-and-yarn</goal>
  167. </goals>
  168. <configuration>
  169. <nodeVersion>v12.10.0</nodeVersion>
  170. <yarnVersion>v1.21.1</yarnVersion>
  171. </configuration>
  172. </execution>
  173. <execution>
  174. <id>yarn install</id>
  175. <goals>
  176. <goal>yarn</goal>
  177. </goals>
  178. </execution>
  179. <execution>
  180. <id>watch</id>
  181. <goals>
  182. <goal>yarn</goal>
  183. </goals>
  184. <phase>none</phase>
  185. <configuration>
  186. <arguments>run watch</arguments>
  187. </configuration>
  188. </execution>
  189. <execution>
  190. <id>grunt-browserify</id>
  191. <goals>
  192. <goal>grunt</goal>
  193. </goals>
  194. <configuration>
  195. <arguments>${gruntArg}</arguments>
  196. </configuration>
  197. </execution>
  198. </executions>
  199. </plugin>
  200. <plugin>
  201. <groupId>pl.project13.maven</groupId>
  202. <artifactId>git-commit-id-plugin</artifactId>
  203. <version>4.0.1</version>
  204. <executions>
  205. <execution>
  206. <id>get-the-git-infos</id>
  207. <goals>
  208. <goal>revision</goal>
  209. </goals>
  210. </execution>
  211. <execution>
  212. <id>validate-the-git-infos</id>
  213. <goals>
  214. <goal>validateRevision</goal>
  215. </goals>
  216. <phase>package</phase>
  217. </execution>
  218. </executions>
  219. <configuration>
  220. <generateGitPropertiesFile>true</generateGitPropertiesFile>
  221. <excludeProperties>
  222. <excludeProperty>git.user.*</excludeProperty>
  223. </excludeProperties>
  224. </configuration>
  225. </plugin>
  226. <plugin>
  227. <groupId>net.revelc.code.formatter</groupId>
  228. <artifactId>formatter-maven-plugin</artifactId>
  229. <version>2.12.0</version>
  230. <configuration>
  231. <configFile>${project.basedir}/eclipse-formatter.xml</configFile>
  232. <compilerSource>11</compilerSource>
  233. <compilerCompliance>11</compilerCompliance>
  234. <compilerTargetPlatform>11</compilerTargetPlatform>
  235. </configuration>
  236. </plugin>
  237. </plugins>
  238. </build>
  239. </project>