The AptoFEM package is a general purpose finite element software toolkit with a strong emphasis on applications arising in computational fluid dynamics and computational electromagnetics. It is currently being developed in Fortran 90 and its design takes advantage of the object oriented concepts and the generic programming capabilities offered by this language. The key features of this package include: Non-conforming Discontinuous Galerkin finite element methods. Standard conforming finite element methods. Dimension independent data structures. 2D/3D unstructured hybrid grids consisting of triangles, quadrilaterals, hexahedra, tetrahedra, prisms, pyramids. Local isotropic and anisotropic mesh adaptation. Arbitrary high-order hp-FEM. A posteriori error estimation. Interfaces to a variety of third party linear algebra packages.