Skip to content

Commit

Permalink
Reworking the README for support changes
Browse files Browse the repository at this point in the history
  • Loading branch information
farmdawgnation committed Jul 23, 2017
1 parent 09a71ce commit 43fa4c0
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 52 deletions.
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ all of the following criteria:
* The request handles an issue that has been discussed on the Lift mailing list
and whose solution has been requested by the committers (and in general adheres
to the spirit of the issue guidelines above).
* The request includes a signature at the bottom of the /contributors.md file.
* The contributor's signature is already in or added to /contributors.md file.

Note that only Lift committers can merge a pull request, and accepting or rejecting
a pull request is entirely at the discretion of the Lift committers. By merging a
Expand Down
106 changes: 55 additions & 51 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,26 +13,6 @@ Lift applications are:

Because Lift applications are written in [Scala](http://www.scala-lang.org), an elegant JVM language, you can still use your favorite Java libraries and deploy to your favorite Servlet Container and app server. Use the code you've already written and deploy to the container you've already configured!

## Issues

Issues on the Lift GitHub project are intended to describe actionable,
already-discussed items. Committers on the project may open issues for
themselves at any time, but non-committers should visit the [Lift mailing
list](https://groups.google.com/forum/#!forum/liftweb) and start a discussion
for any issue that they wish to open.

## Pull Requests

We will accept pull requests into the [Lift codebase](https://github.com/lift)
if the pull requests meet the following criteria:

* The request handles an issue that has been discussed on the [Lift mailing list](http://groups.google.com/forum/#!forum/liftweb)
and whose solution has been requested (and in general adheres to the spirit of
the issue guidelines outlined in [CONTRIBUTING.md](https://github.com/lift/framework/blob/master/CONTRIBUTING.md)).
* The request includes a signature at the bottom of the `/contributors.md` file.

For more details, see [CONTRIBUTING.md](https://github.com/lift/framework/blob/master/CONTRIBUTING.md).

## Getting Started

**Compatibility note:**
Expand All @@ -41,30 +21,32 @@ you'll need to use Lift 2.6 until you can upgrade your Java installation.

You can create a new Lift project using your favorite build system by adding Lift as a dependency:

#### sbt
### With sbt

We recommend using the latest sbt version, which is currently 0.13.15, but anything 0.13.6+ will work
with the instructions below.

Create or update your `project/plugins.sbt` file with the `xsbt-web-plugin`:

addSbtPlugin("com.github.siasia" %% "xsbt-web-plugin" % "3.0.2")
```scala
addSbtPlugin("com.github.siasia" %% "xsbt-web-plugin" % "3.0.2")
```

Then, add the plugin and Lift to your `build.sbt` file:

enablePlugins(JettyPlugin)
```scala
enablePlugins(JettyPlugin)

libraryDependencies ++= {
val liftVersion = "3.1.0"
Seq(
"net.liftweb" %% "lift-webkit" % liftVersion % "compile",
"ch.qos.logback" % "logback-classic" % "1.1.3"
)
}
libraryDependencies ++= {
val liftVersion = "3.1.0"
Seq(
"net.liftweb" %% "lift-webkit" % liftVersion % "compile",
"ch.qos.logback" % "logback-classic" % "1.2.5"
)
}
```

You can [learn more on the cookbook](http://cookbook.liftweb.net/#LiftFromScratch).

#### Maven:
### With Maven

You can use one of the several archetypes -- `lift-archetype-blank`, `lift-archetype-basic`, `lift-archetype-jpa-basic` -- to generate a new Lift project. You must set `archetypeRepository` and `remoteRepositories` to `http://scala-tools.org/repo-releases` or `http://scala-tools.org/repo-snapshots`, depending on whether you are using a release or the latest SNAPSHOT.

Expand All @@ -79,37 +61,63 @@ Or, you can add Lift to your `pom.xml` like so:
Where `${scala.version}` is `2.11` or `2.12`. Individual patch releases of the Scala compiler (e.g. 2.12.2)
are binary compatible with everything in their release series, so you only need the first two version parts.

You can [learn more on the wiki](http://www.assembla.com/wiki/show/liftweb/Using_Maven).
You can learn more about Maven integration [on the wiki](http://www.assembla.com/wiki/show/liftweb/Using_Maven).

## Project Organization
### Learning Lift

The Lift Framework is divided into several components that are published independently. This organization enables you to use just the elements of Lift necessary for your project and no more.
There are lots of resources out there for learning Lift. Some of our favorites include:

### This Repository
* [The Lift Cookbook](http://cookbook.liftweb.net/)
* [Simply Lift](http://simply.liftweb.net)

This repository, `framework`, contains the following components:
If you've found one that you particularly enjoy, please open a PR to update this README!

#### core
## Issues & Pull Requests

Core elements used by Lift projects. If you wish to reuse some of Lift's helpers and constructs, such as `Box`, this component may be all you need. However, a web application will most likely require one or more of Lift's components.
Per our [contributing guidelines][contribfile], Issues on the Lift GitHub project are intended to
describe actionable, already-discussed items. Committers on the project may open issues for
themselves at any time, but non-committers should visit the [Lift mailing
list](https://groups.google.com/forum/#!forum/liftweb) and start a discussion
for any issue that they wish to open.

We will accept issues and pull requests into the Lift codebase if the pull requests meet the following criteria:

* The request is for a [supported version of Lift][supfile]
* The request adheres to our [contributing guidelines][contribfile], including having been discussed
on the Mailing List if its from a non-committer.

[contribfile]: https://github.com/lift/framework/blob/master/CONTRIBUTING.md
[sigfile]: https://github.com/lift/framework/blob/master/contributors.md

## Project Organization

#### web
The Lift Framework is divided into several components that are published independently. This organization enables you to use just the elements of Lift necessary for your project and no more.

This component includes all of Lift's core HTTP and web handling. Including `lift-webkit` in your build process should be sufficient for basic applications and will include `lift-core` as a transitive dependency.
### This Repository

#### persistence
This repository, `framework`, contains the following components:

This component includes Mapper and Record, Lift's two ORMs. While you needn't use either and can use the ORM of your choice, Mapper and Record integrate nicely with Lift's idioms. Mapper is an ORM for relational databases, while Record is a broader ORM with support for both SQL databases and NoSQL datastores.
* **core:** Core elements used by Lift projects. If you wish to reuse some of Lift's helpers and
constructs, such as `Box`, this component may be all you need. However, a web application will most
likely require one or more of Lift's components.
* **web:** This component includes all of Lift's core HTTP and web handling. Including `lift-webkit`
in your build process should be sufficient for basic applications and will include `lift-core` as a
transitive dependency.
* **persistence:** This component includes Mapper and Record, Lift's two ORMs. While you needn't use
either and can use the ORM of your choice, Mapper and Record integrate nicely with Lift's idioms.
Mapper is an ORM for relational databases, while Record is a broader ORM with support for both SQL
databases and NoSQL datastores.

### Other Repostories

There are a variety of other repositories available on the Lift GitHub page. While many are concerned with building Lift or are build program archetypes, there are two you will probably encounter fairly frequently as a Lift user:

#### modules

The [modules](https://github.com/liftmodules) repository contains the many add-on modules that are part of the Lift project. If you don't find a module you need here, consider [creating a module](http://www.assembla.com/spaces/liftweb/wiki/Modules) and sharing it with the community.

Please note that the modules project does accept pull requests.
The [modules](https://github.com/liftmodules) organization contains the many add-on modules that are
part of the Lift project. If you don't find a module you need here, consider
[creating a module](http://www.assembla.com/spaces/liftweb/wiki/Modules) and sharing it with the
community.

#### examples

Expand Down Expand Up @@ -145,10 +153,6 @@ The Lift wiki is hosted on Assembla and can be found at [http://www.assembla.com

The ScalaDocs for each release of Lift, in additional to the actual JARs, are available on the Liftweb.net site. You can access the source code–based documentation for releases via the site's homepage or by navigating directly to the URL for the specific release. For instance, the Lift 3.0 release can be accessed at [http://liftweb.net/api/31/api/](http://liftweb.net/api/31/api/).

### Cookbook

You can find up-to-date information on the [Lift Cookbook](http://cookbook.liftweb.net/)

## License

Lift is open source software released under the **Apache 2.0 license**.
Expand Down

0 comments on commit 43fa4c0

Please sign in to comment.