Skip to content
Set of handy reusable .NET components that can simplify your daily work and save your time when you copy and paste your favorite helper methods and classes from one project to another
C# Other
  1. C# 99.9%
  2. Other 0.1%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE
Build 2.2.1 hotfix - missing 472 build Jun 3, 2019
CodeJam.Blocks.Tests Move as much as possible to CodeJam.Targeting namespace to have less … Feb 14, 2019
CodeJam.Blocks 2.2.1 hotfix - missing 472 build Jun 3, 2019
CodeJam.Docs Update documentation packages. Feb 7, 2019
CodeJam.Experimental.Tests Lower required .NET Framework versions. Feb 6, 2019
CodeJam.Experimental Lower required .NET Framework versions. Feb 6, 2019
CodeJam.Main.Tests
CodeJam.Main
PerfTests[WIP] Lower required .NET Framework versions. Feb 6, 2019
docs Working on docs Aug 27, 2017
images Experimental to netstandard 2 Sep 2, 2017
.editorconfig Added .editorconfig Sep 19, 2017
.gitattributes crlf settings Apr 2, 2016
.gitignore 1.3.0-beta2 preparations Dec 19, 2016
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Aug 2, 2017
CONTRIBUTING.md Revert "Merge branch 'master' of https://github.com/rsdn/CodeJam into… Apr 26, 2016
CodeJam.sln Move sln items to the Build folder Jan 12, 2019
CodeJam.sln.DotSettings StartsWithInvariant/EndsWithInvariant/IndexOfInvariant/LastIndexOfInv… Jun 2, 2019
CodeJam.sln.GhostDoc.user.dic
CodeJam.sln.GhostDoc.xml Comments and refactoring Apr 22, 2016
CodeJamDoc.shfbproj Update documentation packages. Feb 7, 2019
CodeJamDoc.sln Core tests on Appveyor Dec 1, 2018
CodeJamDoc.sln.GhostDoc.xml Solution for documentation Apr 23, 2016
LICENSE Create LICENSE Feb 5, 2019
LOGO-CC-BY-SA
README.md Update README Feb 11, 2019
TestsGuidelines.md * CodeJam.BenchmarkDotNet project - WORK IN PROGRESS Jun 29, 2016
appveyor.doc.yml Publish right artifact Feb 19, 2019
appveyor.yml Suppress NU3005. Feb 12, 2019

README.md

CodeJam Library

CodeJam.Main.Icon

CodeJam

CodeJam is a set of handy reusable .NET components that can simplify your daily work and save your time when you copy and paste your favorite helper methods and classes from one project to another.

The CodeJam project includes three parts:

  • Main - stable and feature complete code.
  • Blocks - app building blocks, more specific and feature oriented functionality.
  • Experimental - A workspace for code development. Contains incomplete and/or unstable parts.
  • CodeJam.PerfTests - a performance testing framework for .Net projects.

Main

CodeJam is dedicated to one principal goal: creating and maintaining reusable code. The CodeJam main package is a place for collaboration and sharing, where developers community can work together on code to be shared by the CodeJam.

CodeJam developers will make an effort to ensure that their components have no dependencies on other third-party libraries, so that these components can be deployed easily. In addition, CodeJam will keep their interfaces as stable as possible, so that users can use it without having to worry about changes in the future.

We welcome participation from all who are interested, at all skill levels. Coding, documenting, testing and development process itself are all critical parts of the software development process. If you are interested in contribute in any of these aspects, please join us!

Blocks

PerfTests

CodeJam.PerfTests is performance testing framework for .Net projects.

It allows to compare multiple implementations by execution time (memory limits coming soon), to annotate test methods with timing limits and to check the limits each time the test is run.

.NET Standard 1.6, 1.5 support

Almost all features are supported. Functionality not supported:

  • XmlAttributeReader

.NET Core 1.1, 1.0 support

Almost all features are supported. Functionality not supported:

  • XmlAttributeReader

.NET Framework 2.0 support

.NET Framework 2.0 support is limited. Functionality not supported in addition to .NET Framework 3.5 limitations:

  • LINQ to XML extensions - .NET 2.0 doesn't have LINQ XML related classes

.NET Framework 3.0 support

.NET Framework 3.0 support is limited. Functionality not supported in addition to .NET Framework 3.5 limitations:

  • LINQ to XML extensions - .NET 3.0 doesn't have LINQ XML related classes

.NET Framework 3.5 support

.NET Framework 3.5 support is limited. Functionality not supported:

  • Mapping - all mapping related classes not supported due to expression tree incompatibility
  • ExpressionExtensions - all visitor related functionality excluded due to expression tree incompatibility
  • MemberAccessor/TypeAccessor - excluded due to expression tree incompatibility
  • ComparerBuilder - excluded due to absence of TypeAccessor and MemberAccessor classes
  • PerfTests package not support FW 3.5 at all.

Contribute!

Some of the best ways to contribute are to try things out, report bugs, and join in design conversations.

Looking for something to work on? The list of up for grabs issues is a great place to start.

Download

Just install CodeJam nuget package via Visual Studio Package Manager and use it!

To install the latest release without Visual Studio, run nuget command line:

nuget install CodeJam

To get the latest "preview" drop, add the -pre switch to the nuget commands

Links

Licensing & notices

The CodeJam project is free software. There is no warranty; not even for merchantability or fitness for a particular purpose.

You may use, copy, modify and redistribute all files included in this distribution, individually or in aggregate, subject to the terms and conditions of the MIT license. See the file LICENSE for details.

The project includes code parts taken from (mostly to ease targeting to previous versions of .Net) or inspired by third-party implementations.

All such places are marked with // BASEDON: comment. Here they are:

In addition, you may -- at your option -- use, copy, modify and redistribute all images included in this distribution under the directory named images according to the terms and conditions of the Creative Commons Attribution-ShareAlike 4.0 International License. Use following text as a template for attribution:

CodeJam logo (c) by Arthur Kozyrev

CodeJam logo is licensed under a
Creative Commons Attribution-ShareAlike 4.0 International License.

You should have received a copy of the license along with this
work. If not, see <http://creativecommons.org/licenses/by-sa/4.0/>

See the file LICENSE-CC-BY-SA for details.

You can’t perform that action at this time.